Extract-text-webpack-plugin删除所有.js代码
extract-text-webpack-plugin removes all .js code
TL;DR:当生成两个。js和一个。css块时,插件会从其中一个。js块中删除所有。js代码。
即使我只使用webpack文档中的示例,这也是可重复的行为。
我可能错过了什么,但我找不到它是什么:)
配置如下:
var path = require('path');
var webpack = require('webpack');
var ExtractTextPlugin = require("extract-text-webpack-plugin");
var glob = require("glob");
module.exports = {
entry: {
app: [
'./.build/app/app_dependencys.js',
'./.build/app/_helpers/api_helpers.js',
'./.build/app/event-manager.js',
'./.build/app/route_handlers/Router.js'
],
lib: [
'c3',
'lodash',
'moment',
'moment-timezone',
'pleasejs',
'react-bootstrap-datetimepicker',
'react',
'react-bootstrap',
'react-d3-components',
'react-datepicker-component',
'react-googlemaps',
'react-router',
'react-slider',
'reactable',
'select2'
],
css: glob.sync('./css/css/*.styl')
},
output: {
path: path.join(__dirname, 'js/dist'),
filename: "app.js",
chunkFilename: "[name].js"
},
module: {
loaders: [
{test: /'.jsx?$/, loader: 'babel?compact=false', ignore: /node_modules/},
{test: /'.json$/, loader: "json"},
{
test: /'.styl$/,
loader: ExtractTextPlugin.extract('raw', 'raw!stylus')
}
]
},
plugins: [
new ExtractTextPlugin('id', "./../../css/compiled/css.css", {allChunks: false}),
new webpack.optimize.CommonsChunkPlugin(/* chunkName= */"lib", /* filename= */"lib.js", Infinity)
],
externals: ['jquery'],
bail: true
};
运行webpack
时,输出如下:
Time: 51884ms
Asset Size Chunks Chunk Names
app.js 3.8 kB 0, 1 [emitted] app, css
lib.js 3.47 MB 2 [emitted] lib
./../../css/compiled/css.css 131 kB 1 [emitted] css
[0] multi app 64 bytes {0} [built]
[0] multi css 364 bytes {1} [built]
[0] multi lib 196 bytes {2} [built]
+ 634 hidden modules
Child extract-text-webpack-plugin:
+ 1 hidden modules
Child extract-text-webpack-plugin:
+ 1 hidden modules
Child extract-text-webpack-plugin:
+ 1 hidden modules
.... it goes on for a while ...
结果:
-
css.css
包含所需的所有css -
lib.js
包含所需的所有lib代码 app.js
: app.js中的每个条目都被替换为/***/ 581: /***/ function(module, exports) { // removed by extract-text-webpack-plugin /***/ }, /***/ 582: /***/ function(module, exports) { // removed by extract-text-webpack-plugin /***/ }, ...
报告给插件作者:https://github.com/webpack/extract-text-webpack-plugin/issues/118
回答:https://github.com/webpack-contrib/extract-text-webpack-plugin/issues/118
好的,我的工作是:good: entry: {js: './js/app.js', css:"。/scss/主要。{js: './js/app.js';"。/scss/主要。唯一的区别- CSS键而不是Scss。还有条目:'./js/main.js', './scss/main. js'。
相关文章:
- 为什么indexOf在这个js代码中不起作用
- js代码从jQuery转换为原生代码
- JS代码中的减号
- 谷歌地图Api和JS代码不工作
- HTML 5 和 3.js 代码不会在网页上显示任何内容
- 为什么这个JS代码打印未定义
- JS代码在jsbin中有效,在jsfiddle或Chrome/Safari中无效
- 页面加载后加载简单的JS代码
- 扩展JS代码
- 如何使用js代码转发reactjs路由器
- 用js代码重新定位文本
- 即使被信号处理程序中断,node.js代码也会一直运行到完成吗
- JS代码使IE9和Safari冻结,在Opera中不起作用
- 分析JS代码以在客户端获取cookie
- 改进js代码以删除全局变量和函数
- 对php文件的Ajax调用返回该文件中的JS代码,而不是执行它
- 在单独的上下文中运行 js 代码并访问其全局变量
- 这个 ajax.js 代码有什么问题
- 如何使用 GetValues 使用 Jint 运行 Js 代码
- JS代码有什么问题,让我知道代码是否可以改进