【问题标题】:react(es6) build by webpack has an Uncaught TypeError in browser由 webpack 构建的 react(es6) 在浏览器中有一个 Uncaught TypeError
【发布时间】:2016-02-28 17:14:07
【问题描述】:

我在我的项目中使用了 react.js。我用 es6 语法编写了 react 类。我用 webpack 构建了我的 react 组件,bundle.js 运行良好,但我发现我无法在浏览器中运行 bundle.js 之后的任何其他 js。当我在浏览器控制台中运行“var a = 0”时,出现如下错误:

Uncaught TypeError: Cannot assign to read only property 'toString' of function 'function bound(var_args)
    {
        return InjectedScriptHost.callFunction(func, thisObject, concat(args, sl...<omitted>... }'

我的版本信息:

babel:6.5.2

反应:0.14.5

webpack:1.12.14

我的 webpack 配置是:

 module: {
        loaders: [
            {
                test: /\.react\.js$/,
                loader: 'babel',
                exclude: /node_modules/
            }
        ]
    },
    plugins: [
        new webpack.DefinePlugin({
            "process.env": {
                NODE_ENV: JSON.stringify("production")
            }
        })
    ]

我想知道是否有人遇到过这样的问题?

【问题讨论】:

    标签: javascript reactjs webpack babeljs


    【解决方案1】:

    您不希望您的 babel 加载器测试 /\.react\.js$/,因为这将与 react 库本身匹配,而这不是您想要的。相反,您希望加载器测试与/\.jsx?$/ 匹配的应用程序文件(假设您的文件扩展名是.jsx,它们应该是)。假设你的 webpack 配置的其余部分是好的,这应该可以工作。

    如果您希望我进一步解释,请告诉我。

    【讨论】:

    • 你确实告诉我我犯了一个错误,即 /\.react\.js$/ 。我将应用程序文件从 xxxx.react.js 更改为 xxxx.blog.js,并更改 webpack.config 和文件导入,但问题仍然存在。
    猜你喜欢
    • 2017-06-03
    • 2021-08-28
    • 1970-01-01
    • 2020-04-14
    • 2019-03-11
    • 1970-01-01
    • 2021-03-02
    • 2018-11-11
    • 2018-12-24
    相关资源
    最近更新 更多