在 react-native.config.js 中检测开发环境
Posted
技术标签:
【中文标题】在 react-native.config.js 中检测开发环境【英文标题】:Detect development environment in react-native.config.js 【发布时间】:2020-11-07 22:34:23 【问题描述】:我想在react-native.config.js
中访问__DEV__
,这样我就可以管理一些在开发和生产环境中链接的本机库,例如下面的示例:
const VECTOR_ICONS_FONTS_PATH =
'./node_modules/react-native-vector-icons/Fonts';
const VECTOR_FONTS = ['MaterialCommunityIcons.ttf'];
module.exports =
assets: ['./src/assets/fonts/nop/nop.ttf'],
dependencies:
'react-native-vector-icons':
platforms:
ios: null,
android: null,
,
assets: VECTOR_FONTS.map((font) => VECTOR_ICONS_FONTS_PATH + '/' + font),
,
'react-native-flipper':
platforms:
ios: null,
android: __DEV__ ? undefined : null,
,
,
,
;
但如果我这样做,我会收到以下错误:
$ react-native run-android
error Unrecognized command "run-android".
info Run "react-native --help" to see a list of all available commands.
error Command failed with exit code 1.
【问题讨论】:
尝试npm run android
如果错误相同则可能是由于node_modules,尝试删除node_modules和package-lock.json,然后执行npm install
并重试您的命令
我没有使用 npm。 @shubhamjha,这不是解决方案。
那你用什么?你能发布你的 package.json 文件吗?
创建两个单独的文件staging
和production
。然后编写一个脚本,根据您传递的参数复制其中一个文件,然后覆盖您的主 config
文件。这就是我正在做的事情,如果您有更好的解决方案,请告诉我。
【参考方案1】:
你使用的是什么版本的 Nodejs 和 NPM?
当项目未正确初始化时,有时会发生这种情况。 不妨试试以下方法:
-
如果不是 LTS,则更新 NodeJs/NPM
删除node_modules目录
运行
npm install or yarn install
运行react-native init
运行react-native run-android
(react-native run-android is unrecognized 的重复)
【讨论】:
以上是关于在 react-native.config.js 中检测开发环境的主要内容,如果未能解决你的问题,请参考以下文章
React-Native 更改 iOS 和 Android 文件夹的默认位置
NOIP 2015 & SDOI 2016 Round1 & CTSC 2016 & SDOI2016 Round2游记