Angular 如何使网页包忽略组件';模板?
我在Angular4/AngularMaterial2/TypeScript项目中使用Webpack3来捆绑js代码。我试图基于以下示例实现延迟加载: 我的项目使用带有外部模板的角度组件(templateUrl而不是template)。Webpack试图将它们包含在捆绑包中,但我希望将它们保留在外部。如何使Webpack停止捆绑模板 我的网页包配置:Angular 如何使网页包忽略组件';模板?,angular,webpack,Angular,Webpack,我在Angular4/AngularMaterial2/TypeScript项目中使用Webpack3来捆绑js代码。我试图基于以下示例实现延迟加载: 我的项目使用带有外部模板的角度组件(templateUrl而不是template)。Webpack试图将它们包含在捆绑包中,但我希望将它们保留在外部。如何使Webpack停止捆绑模板 我的网页包配置: "use strict"; const path = require("path"); const ngtools = require("@ng
"use strict";
const path = require("path");
const ngtools = require("@ngtools/webpack");
const webpack = require("webpack");
const CommonsChunkPlugin = webpack.optimize.CommonsChunkPlugin;
module.exports = {
devtool: "source-map",
context: path.resolve(__dirname, "out"),
entry: {
app: [path.resolve(__dirname, "out", "app")],
vendor: [path.resolve(__dirname, "out", "vendor")]
},
output: {
path: path.resolve(__dirname, "out", "public", "assets", "js"),
filename: "[name].js",
publicPath: "/assets/js/"
},
module: {
loaders: [
{ test: /\.js$/, exclude: /node_modules/, loader: "@ngtools/webpack" }
]
},
resolve: {
extensions: [".ts", ".js"]
},
plugins: [
new ngtools.AotPlugin({
tsConfigPath: "./tsconfig.json",
mainPath: "./app.ts"
}),
new CommonsChunkPlugin({
name: "vendor"
}),
new CommonsChunkPlugin({
async: true
})
]
};
我错过了什么?我不明白。如果我在没有AOT的情况下使用Webpack,我会得到更小的js文件(仍然非常大,但比使用AOT时要小),html文件会单独加载。装载时间无法接受。如果我将Webpack与AOT结合使用,html文件会捆绑在一起,js文件会变得非常庞大,但加载时间非常长(只要连接良好)。难道没有办法从这两个世界中得到最好的结果吗?