Javascript 网页包生成错误

Javascript 网页包生成错误,javascript,node.js,webpack,Javascript,Node.js,Webpack,网页包有一些问题。它构建得很好,但是当我打开我的站点时,我得到:Getting error:“uncaughtreferenceerror:webpackJsonp未定义” 我相信我的插件在我的应用捆绑之前就已经运行了 知道我的配置在src/config/webpack.config.js中可能会有所帮助,它正在构建到dist/js/ 我读过,但都没有帮助,除非我遗漏了什么 devtool: 'source-map', entry: { vendor: [ 'reac

网页包有一些问题。它构建得很好,但是当我打开我的站点时,我得到:
Getting error:“uncaughtreferenceerror:webpackJsonp未定义”

我相信我的插件在我的应用捆绑之前就已经运行了

知道我的配置在
src/config/webpack.config.js
中可能会有所帮助,它正在构建到
dist/js/

我读过,但都没有帮助,除非我遗漏了什么

  devtool: 'source-map',
  entry: {
    vendor: [
      'react', 'react-dom', 'react-router', 'react-helmet', 'react-redux', 'moment-timezone', 'cookies-js', 'superagent', 'classnames', 'es6-promise'
    ],
    app: [
      './src/client/entry',
      './scss/main.scss',

    ]
  }
  output:{
    path: __dirname + '../../dist/js',
    filename: 'app.js'
  }
  plugins:[
    new webpack.optimize.CommonsChunkPlugin('vendor', 'vendor.js'),

    new ExtractTextPlugin('../css/app.css', {
        allChunks: true
    }),
    new webpack.DefinePlugin({
      'process.env':{
        'NODE_ENV': JSON.stringify('production')
      }
    }),
    new webpack.optimize.AggressiveMergingPlugin(),
    new webpack.optimize.DedupePlugin(),
    new webpack.optimize.UglifyJsPlugin({
      compress: {
        warnings: true
      },
      output: {
        comments: false
      }
    }),
    ...persistentPlugins
  ],

webpackJsonp
函数是由commons块定义的,因此在编写
标记时,必须始终将commons块(
vendor.js
)放在第一位。您也不能使用


另一种可能性是,当您将
output.filename
设置为常量字符串时,条目区块会覆盖供应商区块。尝试将其命名为
[name].js
而不是
app.js

我的生产环境也面临同样的问题。我不知道为什么,但当我只上传捆绑包+供应商,用生产webpack配置构建时,我得到了相同的错误。我刚刚解决了重新启动节点应用程序的错误。但我知道这不是一个好办法

我在我的网页制作配置中使用的插件与您完全相同,我很确定原因是其中一个网页优化插件

我的建议是: 尝试逐一评论这些优化插件(AggressiveEmergingPlugin、Dedupleplugin和UglifyJsPlugin),您可能会发现是哪一个导致了问题


我现在不能测试它,因为它只发生在我的生产环境中,我现在不能停止/测试它。但是,如果它对您有效,请让我知道:)

看起来我加载脚本的顺序不对。修复了我的webpackJsonp错误。现在只加载了我的标题,但我的控制台或服务器日志中没有任何错误,这一点都没有帮助。需要加载polyfills.js,然后加载vendor.js,然后加载app.jsI才能用上面标记的答案解决我的问题