reactjs - Babel - .js 文件中具有 JSX 语法的节点模块会破坏编译

标签 reactjs react-native babeljs react-native-web

导入 .JS 文件中使用 JSX 语法的模块时,我收到 SyntaxError。

其中一个例子是“react-navigation”

Failed to compile.

./node_modules/@react-navigation/native/dist/ResourceSavingSceneView.js
SyntaxError: /Users/my_user/Projects/my-react-native-web-app/node_modules/@react-navigation/native/dist/ResourceSavingSceneView.js: Unexpected token(35:11)

  33 |     } = this.props;
  34 |
> 35 |     return <View style={styles.container} collapsable={false} removeClippedSubviews={Platform.OS === 'android' ? removeClippedSubviews: !isFocused && removeClippedSubviews}>
     |            ^
  36 |         <View style={this._mustAlwaysBeVisible() || isFocused ?styles.innerAttached : styles.innerDetached}>
  37 |           {awake ? <SceneView {...rest} navigation={childNavigation} /> : null}
  38 |         </View>

下面是我的 babel 配置:

module.exports = function(api) {
    api.cache(true);
    return {
        plugins: [
            [
                "@babel/plugin-proposal-class-properties",
                {
                    loose: true
                }
            ],
            [
                "module-resolver",
                {
                    alias: {
                        "^react-native$": "react-native-web"
                    }
                }
            ]
        ],
        presets: [["react-app"], ["babel-preset-expo"]]
    };
};

希望有人知道发生了什么

谢谢:)

最佳答案

你必须明确告诉 webpack 转译 react-navigation

      // Process JS with Babel.
      {
        test: /\.(js|jsx|mjs)$/,
        include: [
          `${paths.appNodeModules}/react-navigation`,

引用文献:webpack.config.dev.js#L141

关于reactjs - Babel - .js 文件中具有 JSX 语法的节点模块会破坏编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53744415/

相关文章:

javascript - Babel 'protoToAssign' 变压器和 ES6 类继承

javascript - ReactJS中带有表单的组件不断刷新页面

reactjs - 如何删除 react-draft-wysiwyg 工具栏中的默认选项?

javascript - 如何同时导入组件和 props 类型别名?

javascript - React Native 深层链接应用程序从后台打开

react-native - TextInput 只允许数字 react 原生

javascript - ReactJS 服务端渲染问题

react-native - 构建React Native项目时出现错误

angular - 导入到 Controller 后,三个 JS + Angular 7 出现错误 BufferAttribute

reactjs - Webpack/Babel/React 构建错误 : "Unknown option: foo/node_modules/react/react.js.Children"