webpackJsonp未定义

Owe*_*own 8 reactjs webpack

代码

这是我的webpack.babel.js

入境部分:

entry: {
   vendor: [
       "react",
       "react-dom"
    ]
}

// ??????(??????????)
let files = glob.sync('./src/**/index.js'),
    newEntries = files.reduce(function (memo , file) {
        let name = /.*\/(.*?)\/index\.js/.exec(file)[1];

        memo[name] = entry(name);

        return memo;
    }, {});

config.entry = Object.assign({} , config.entry , newEntries);

function entry(name) {
    return './src/js/' + name + '/index.js';
}
Run Code Online (Sandbox Code Playgroud)

输出部分:

output: {
    path: path.join(__dirname,"/dist/js/"),
    filename: "[name].js"
},
Run Code Online (Sandbox Code Playgroud)

模块部分:

 module: {

        // ??js??? ?? ?es5 ?? ?????? js ?? 
        loaders: [{
            test: /\.js$/,
            exclude: /node_modules/,
            loader: 'babel',
            query: {
                presets: [
                    'es2015',
                    'stage-0',
                    'react'
                ]
            } 
        }]
    },

    // ??????
    plugins: [
        new webpack.optimize.CommonsChunkPlugin('vendor' , 'vendor.bundle.js')
    ]
}
Run Code Online (Sandbox Code Playgroud)

我在我的React代码中使用webpack加载(home.js)

问题

我想加载我的脚本但是遇到一些ReferenceError.

未捕获的ReferenceError:未定义webpackJsonp

我正在home.js之前加载vendor.bundle.js包文件

<script src="../../dist/js/vendor.bundle.js"></script>
<script src="../../dist/js/home.js"></script>
Run Code Online (Sandbox Code Playgroud)

Jee*_*Mok 1

尝试添加Infinity到您的模块部分:

\n\n
module: {\n    ...\n\n    // \xe7\xac\xac\xe4\xb8\x89\xe6\x96\xb9\xe5\xba\x93\xe5\x90\x88\xe5\xb9\xb6\n    plugins: [\n        new webpack.optimize.CommonsChunkPlugin('vendor' , 'vendor.bundle.js', Infinity)\n    ]\n}\n
Run Code Online (Sandbox Code Playgroud)\n