使用create-react-native-app创建项目后执行yarn web遇glob依赖缺失错误
问题解答
1. 为什么create-react-native-app没打包glob依赖?
这是@expo/cli@0.7.3版本的依赖声明bug——该版本的@expo/cli在代码逻辑中调用了glob包,但未在自身package.json里将glob声明为依赖项。你使用的Yarn PnP模式会严格校验包的依赖链,不允许隐式调用未声明的依赖,因此触发了这个错误。问题出在Expo CLI的版本上,和create-react-native-app本身无关。
2. 应该全局还是本地安装glob?
优先本地安装,全局安装可能引发不同项目的依赖版本冲突,破坏稳定性。在项目根目录执行以下命令即可:
yarn add glob
如果Yarn提示该包属于开发依赖,也可以使用:
yarn add -D glob
安装完成后重新运行yarn web即可解决问题。
3. 其他React Native项目模板创建工具
- 官方React Native CLI:通过
npx react-native init <项目名>创建原生架构的RN项目,支持裸工程(不依赖Expo),适合需要深度定制原生代码的场景。 - Expo CLI:执行
npx create-expo-app <项目名>,这是Expo官方的初始化工具,和create-react-native-app同源但更新更及时,支持TypeScript、Blank等多种模板。 - Ignite CLI:Infinite Red推出的生产级工具,提供预配置的项目模板,集成了Redux、TypeScript、ESLint等常用工具,适合快速启动复杂项目。
- React Native Paper Templates:基于Material Design的UI库模板,通过
npx react-native init <项目名> --template react-native-paper-template-typescript创建自带UI组件的项目。
内容的提问来源于stack exchange,提问作者miltone
相关产品推荐
相关产品推荐

