我的app.js需要做出反应。 我按照以下说明拆分应用程序并对代码做出反应:https://webpack.github.io/docs/code-splitting.html#split-app-and-vendor-code。
不幸的是,webpack会生成app.bundle.js和vendors.bundle.js;两者都包含react.js库,这是不需要的。
根据上面的链接帖子,我希望webpack生成一个小的app.bundle.js(不包含反应)和一个大的vendor.js(包含反应)。
我的webpack配置文件:
var path = require('path');
var webpack = require('webpack');
module.exports = {
entry: {
app: "./app.js",
vendors: ['react']
},
output: {
filename: '[name].bundle.js' // Notice we use a variable
},
plugin: [
new webpack.optimize.CommonsChunkPlugin(/* chunkName= */"vendors", /* filename= */"vendor.js")
],
module: {
preLoaders: [
{
test: /\.jsx?$/,
exclude: /(node_modules|bower_components)/,
loader: 'source-map'
}
],
loaders: [
{
test: /\.jsx?$/,
exclude: /(node_modules|bower_components)/,
loaders: [
'react-hot',
'babel?presets[]=stage-0,presets[]=react,presets[]=es2015'
]
}
]
}
};
我的app.js文件:
// Import React and JS
var React = require('react')
React.render(
React.createElement('h1', null, 'Hello, world!'),
document.getElementById('example')
);
任何建议都受到高度赞赏。
答案 0 :(得分:1)
plugins: [
new webpack.optimize.CommonsChunkPlugin(/* chunkName= */"vendors", /* filename= */"vendor.js")
]
使用插件,而不是插件。