首页 > 解决方案 > 未捕获的 ReferenceError:react.DOM.render 中未定义 require$$2

问题描述

在构建后为我的反应应用程序提供服务时,此错误-

未捕获的 ReferenceError:react.DOM.render 中未定义 require$$2

出现在 index.js 文件中的 ReactDOM.render 语句中-

import React from 'react';
import ReactDOM from 'react-dom';
import { createStore, applyMiddleware, compose } from 'redux';
import { Provider } from 'react-redux';
import thunk from 'redux-thunk';
import rootReducer from './modules';
import Routes from './routes';

const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;

const store = createStore(
  rootReducer,
  composeEnhancers(
    applyMiddleware(thunk)
  )
);

ReactDOM.render(
  <Provider store={ store }>
    { Routes }
  </Provider>,
  document.getElementById('root')
);

我正在使用 Rollup 捆绑我的应用程序,这是 build.config.js 文件-

export default {
  input: join(__dirname, "src/index.js"),
  output: {
    file: `client/build/scripts/app.js`,
    format: "iife",
    sourcemap: true,
  },
  plugins: [
    babel({
      babelHelpers: "runtime",
      babelrc: true,
      exclude: "node_modules/**",
    }),
    replace({
      "process.env.NODE_ENV": JSON.stringify("development"),
      preventAssignment: true
    }),
    postCss({
      plugins: [postCssImport()],
    }),
    commonjs(),
    json({
      include: "node_modules/**",
      exclude: "node_modules/buffer-es6/**",
    }),
    nodePolyfills(),
    nodeResolve({
      preferBuiltins: false,
      extensions: [".js", ".jsx"],
    }),
  ],
};

在构建时的堆栈跟踪中-

(!) Unresolved dependencies
https://rollupjs.org/guide/en/#warning-treating-module-as-external-dependency
react-dnd-html5-backend (imported by react-dnd-html5-backend?commonjs-external)
(!) Missing global variable name
Use output.globals to specify browser global variable names corresponding to external modules
react-dnd-html5-backend (guessing 'require$$2')

我不知道为什么我会收到这个错误。有人能帮助我吗?如果需要更多信息,请发表评论。

标签: javascriptreactjsbabeljsreact-domrollupjs

解决方案


我能够解决这个问题。react-tag-input 的依赖存在问题。安装了 react-dnd-html5-backend 并且该错误从未出现。


推荐阅读