You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native+Sanity开发报错:无法解析get-random-values-esm

解决Expo Go中Sanity --_buildCor=p丰年DecCruCl不下ReadWelcome:Unable to resolve "get-random-values-esm" from "sanity\node_modules\sanity\lib\index.js"

以下是针对该问题的实用解决步骤:

  • 安装React Native兼容的随机值替代包
    get-random-values-esm是为浏览器环境设计的包,React Native需使用原生兼容的替代方案:

    npx expo install react-native-get-random-values
    

    在项目入口文件(如App.js)最顶部添加导入语句,确保在Sanity相关代码前加载:

    import 'react-native-get-random-values';
    
  • 配置Sanity客户端适配移动端
    修改Sanity客户端初始化代码,启用CDN并使用最新稳定API版本,提升移动端兼容性:

    import { createClient } from '@sanity/client';
    
    const client = createClient({
      projectId: '你的项目ID',
      dataset: '你的数据集',
      useCdn: true,
      apiVersion: '2023-05-03',
    });
    
  • 清除Expo缓存并重启项目
    缓存可能导致依赖解析异常,执行以下命令清除缓存并重启项目:

    npx expo start --clear
    
  • 手动安装缺失的依赖包
    如果上述方法无效,直接手动安装报错中提到的依赖:

    npm install get-random-values-esm
    
  • 降级Sanity到兼容版本
    部分Sanity新版本在React Native环境下存在兼容性问题,可尝试降级到已知稳定版本(如v3.10.0):

    npm install sanity@3.10.0
    

内容的提问来源于stack exchange,提问作者Marinkie Thupi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 09:02:49