angular - 从 WebPack 迁移到 Angular-CLI 6
问题描述
我需要将配置了WebPack的Angular 6项目迁移到Angular-CLI 6,我担心会破坏某些东西,所以我需要一些指导来获取好的代码并实现这个目标。
关注我的大WebPack 文件的一些示例:
一些插件:
//Plugins Nest - OPTIONS
var extractSassPlugin = new ExtractTextPlugin({
filename: 'css/app.global.css', // This is not just t
allChunks: true
});
var extractCssPlugin = new ExtractTextPlugin({
filename: 'css/app.modules.css', // This is not just t
allChunks: true
});
var htmlPlugin = new HtmlWebpackPlugin({
template: 'src/index.html'
});
var cleanPlugin = new CleanWebpackPlugin(['dist']);
var optionsPlugin = new webpack.LoaderOptionsPlugin({
debug: DEV_ENV || LOCAL_ENV || KARMA
});
var uglifyJs;
if (PROD_ENV === true) {
uglifyJs = new UglifyJsPlugin({
//.. Just if, the code is minified
uglifyOptions: {
compress: true,
comments: false
}
});
} else {
uglifyJs = new UglifyJsPlugin({
//.. Just if, the code is minified
});
}
我有一些CopyWebpackPlugin:
new CopyWebpackPlugin([
{ from: 'src/somewhere', to: 'js/libs/somewhere-else' },
.css
要编译的一些具体扩展:
{
test: /\.print\.scss$/,
use: [
{
loader: 'file-loader',
options: {
name: '[name].min.css',
outputPath: 'css/print/',
publicPath: '../'
}
},
{
loader: 'sass-loader',
options: {
outputStyle: 'compressed'
}
}
]
}
并且使用 split .js entry
( output
hash-chunk) 让代码更容易加载到浏览器:
entry: {
polyfills: './src/polyfills.browser.ts',
vendor: './src/vendor.browser.ts',
main: outputMain
},
output: {
filename: '[name]-[hash].js',
chunkFilename: '[name]-[hash]-chunk.js',
path: path.resolve(__dirname, 'dist')
},
任何帮助都是有效的,谢谢!
解决方案
推荐阅读
- php - ErrorException : implode(): 在不推荐使用数组后传递胶水字符串。交换参数
- mysql - SQL 为过去一周的每一天创建的记录数返回零
- java - 单写者的性能,不同的读者与相同的线程
- java - 是否可以使用 Java 注释更改方法可见性?
- python - 如何用新行扩展 Excel 单元格?
- c# - 如何扩展继承的方法而不是覆盖它?
- python-3.x - 在 tkinter (python3.7) 中禁用撤消按钮
- java - java中的长字符串连接问题?
- python - 从 Python Facebook SDK 上的 AdsInsights 获取所有字段
- angular - 使用以角度扩展原生 html 元素的 Web 组件的问题