模块解析失败:意外的令牌。react-native / index.js“ typeof”运算符

尤尔科

我对前端很陌生-尝试在React上实现客户端。添加“ react-native”依赖项并运行webpack后,出现以下错误:

ERROR in ./node_modules/react-native/index.js 13:7
Module parse failed: Unexpected token (13:7)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
| 'use strict';
| 
> import typeof AccessibilityInfo from './Libraries/Components/AccessibilityInfo/AccessibilityInfo';
| import typeof ActivityIndicator from './Libraries/Components/ActivityIndicator/ActivityIndicator';
| import typeof Button from './Libraries/Components/Button';
 @ ./node_modules/@react-navigation/native/lib/module/useBackButton.js 2:0-43 5:25-36
 @ ./node_modules/@react-navigation/native/lib/module/index.js
 @ ./src/main/js/app.js

我在package.json中具有以下依赖项:

 "dependencies": {
    "@react-native-community/masked-view": "^0.1.7",
    "@react-navigation/native": "^5.1.4",
    "@react-navigation/stack": "^5.2.9",
    "react": "^16.13.1",
    "react-dom": "^16.13.1",
    "react-native": "^0.62.1",
    "react-native-gesture-handler": "^1.6.1",
    "react-native-reanimated": "^1.7.1",
    "react-native-safe-area-context": "^0.7.3",
    "react-native-screens": "^2.4.0",
    "rest": "^2.0.0"
  },
  "scripts": {
    "watch": "webpack --watch -d"
  },
  "devDependencies": {
    "@babel/core": "^7.9.0",
    "@babel/preset-env": "^7.9.0",
    "@babel/preset-react": "^7.9.4",
    "babel-loader": "^8.1.0",
    "webpack": "^4.42.1",
    "webpack-cli": "^3.3.11"
  }

我假设无法识别“ typeof”运算符,但是为什么呢?

错误的哲学家

我只花了几个小时来处理这个确切的问题。

首先,您可以尝试添加"@babel/preset-flow".babelrc文件中(安装后)。这里建议这样做,但实际上对我没有用。

对我有用的只是添加externals: { "react-native": true },到我的webpack.config.js文件中。我的配置文件最终看起来像这样:

const path = require("path")

module.exports = {
    entry: "./src/index.js",
    output: {
        filename: "main.js",
        path: path.resolve(__dirname, "dist"),
    },
    externals: {
        "react-native": true,
    },
    module: {
        rules: [
            {
                test: /\.(js|jsx)$/,
                exclude: /node_modules/,
                use: ["babel-loader"],
            },
            // ...
        ],
    },
}

我的理解是这react-native是一个依赖项,因此@babel/preset-flow实际上并没有被触发来帮助解释flow这些文件中格式-它只能处理文件主要"entry"位置中的webpack.config.js文件。

希望这可以帮助某个人。如果我有点偏离基准,请随时对此答案发表评论,我将对其进行更新:)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

React JS:index.css 1:0中的错误(模块解析失败:意外令牌(1:0))

React Native捆绑:SyntaxError:意外令牌:运算符(*)

JS <(小于)运算符失败

在 JS 中正确使用 typeof 运算符?

Webpack 4基本React js hello world因“模块解析失败:意外令牌”而失败

./src/index.js中的错误14:4模块解析失败:意外的令牌(14:4)您可能需要适当的加载程序来处理此文件类型

React和Webpack模块解析失败:/testimonials.js意外令牌(6:4)

在React / React Native(Redux)中使用Spread运算符

react-native绑定失败:错误:找不到模块/metro-react-native-babel-transformer/src/index.js

React-Native错误:无法从“ index.js”解析模块“ / screen / Welcome”:

React Native 错误:无法解析模块`./index`

我该如何解决模块解析失败的问题:意外令牌(11:9)react-router-native

js扩展运算符,用于模块导出

React JS / Typescript中的空合并运算符

如何在React JS中使用条件运算符

运算符在 React JS 中的行为异常

react JS中的三元运算符

react-native app.js index.js

使用typeof运算符的Node.js / javascript辅助程序的默认值

如何在JS中防止babel变换运算符'typeof'

&&运算符的JS错误

JS“大于”运算符;

react-native:解析错误:意外的令牌<

Powershell $ _运算符是意外令牌

意外的令牌运算符«=»,预期的标点«,»

意外的令牌:UglifyJs中的运算符(>)

在React Native中将三元运算符与useState一起使用

三元运算符 React Native 中的多个条件

React Native获取此错误“无法识别的运算符abs”