反应本机网络,__DEV__ 未定义

eug*_*ene 5 reactjs react-native react-native-web

如果你想在 RN 和 RN-web 之间共享代码,__DEV__也应该在两个平台中提供。

但是我无法使用添加DEVconst __DEV__ = process.env.NODE_ENV !== 'production'; new webpack.DefinePlugin({__DEV__})

我可以设置window.__DEV__好,但是 RN 代码使用__DEV__

我也尝试过添加module:metro-react-native-babel-preset

我见过React Native - __DEV__ 未定义

/* global __DEV__ */有效,但希望有一种方法可以修复它,而无需修改所有使用的源__DEV__

Kin*_*Amo 4

在你的 中webpack.config.js,添加以下内容:

  plugins: [
    // `process.env.NODE_ENV === 'production'` must be `true` for production
    // builds to eliminate development checks and reduce build size. You may
    // wish to include additional optimizations.
    new webpack.DefinePlugin({
      'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV || 'development'),
      __DEV__: process.env.NODE_ENV !== 'production' || true,
    }),
  ],
Run Code Online (Sandbox Code Playgroud)

请参阅https://medium.com/@alexander.forselius/experiment-combining-native-web-ios-android-and-macos-development-in-rectnative-part-1-ecd5887e9cfc

  • 看来博客文章中有一个错误,我猜条件一定是:`__DEV__:process.env.NODE_ENV!=='生产'` (3认同)