错误:加载反应节点模块

时间:2017-04-24 14:56:39

标签: reactjs webpack browserify webpack-2 react-boilerplate

我有一个react组件,我需要在另一个webpack2项目中作为节点模块加载。使用babelify我将react组件代码转换为普通的javascript代码。以下是我提供的转换配置。

browserify: {
  dist: {
    options: {
       transform: [['babelify', {presets: ['es2015', 'react']}]],
       external: ['react', 'react-dom']
    },        
    src: ['src/index.js'],
    dest: 'dist/comp-babelified.js',
  }
}

它成功转换了代码。我可以将它加载到webpack应用程序中。但是当webpack应用程序加载到浏览器中时,会在浏览器控制台中收到以下错误。

Uncaught (in promise) Error: Cannot find module 'react'

如果我从browserify选项中删除external,则会收到以下错误。

Uncaught (in promise) Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: undefined.

看起来它基本上无法加载反应组件。

如何解决此问题?

更新:我已经完成了Uncaught ReferenceError: React is not defined。我全球没有React。我期待webpack理解require('react')已经在node_modules中可用。

0 个答案:

没有答案