Webpack使用CDN的外部模块

时间:2017-03-14 08:35:11

标签: javascript redux external bundling-and-minification webpack-2

我正在使用React和Redux作为应用程序并使用Webpack进行捆绑。我想从CDN加载一些库而不是捆绑它们。这适用于React和ReactDOM,但我不能使它适用于没有全局导出的redux和其他库。这是我在Webpack配置中的当前外部部分:

       externals: [
          { "react": "React" },
          { "react-dom": "ReactDOM" },
          {
              "redux": {
                  commonjs: "redux",
                  commonjs2: "redux",
                  amd: "redux"
              }
          }
        ]

在HTML中,我引用了redux CDN:

<script src="https://cdnjs.cloudflare.com/ajax/libs/redux/3.6.0/redux.min.js"></script>

这是我得到的错误:

Uncaught TypeError: Cannot read property 'combineReducers' of undefined
    at Object.__webpack_exports__.a (ui.ts:10)
    at __webpack_require__ (bootstrap 749616a…:19)
    ...

我对模块没有多少经验,所以也许我错过了一些简单的东西,或者说这是不可能的。

1 个答案:

答案 0 :(得分:2)

尝试Redux(而不是redux)。 CDN文件导出Redux,以及您可能在代码中引用它的方式。

externals: [
  { "react": "React" },
  { "react-dom": "ReactDOM" },
  { "redux": "Redux"}
]