尝试使用webpack/angular 2/.net core进行代码拆分时出错
因此,我试图为我的angular 2应用程序创建一个相当健壮的模板网页包配置文件,但在尝试拆分文件时出现了一个错误 这就是我得到的错误: vendor.js:1未捕获引用错误:未定义webpackJsonp(匿名函数) polyfills.js:51未捕获类型错误:无法读取未定义的属性“call” 注意:使用polyfills.js webpack,实际上会生成两个不同的文件,不确定是否会发生这种情况 当尝试在MVC提供的Index.cshtml文件中加载文件时,我按以下顺序加载它们:尝试使用webpack/angular 2/.net core进行代码拆分时出错,angular,asp.net-core,webpack,Angular,Asp.net Core,Webpack,因此,我试图为我的angular 2应用程序创建一个相当健壮的模板网页包配置文件,但在尝试拆分文件时出现了一个错误 这就是我得到的错误: vendor.js:1未捕获引用错误:未定义webpackJsonp(匿名函数) polyfills.js:51未捕获类型错误:无法读取未定义的属性“call” 注意:使用polyfills.js webpack,实际上会生成两个不同的文件,不确定是否会发生这种情况 当尝试在MVC提供的Index.cshtml文件中加载文件时,我按以下顺序加载它们:vendo
vendor.js
,polyfills.js
,app.js
知道我为什么会犯这些错误吗?此外,如果有一些优化,那么请随意提及
这是我常用的网页文件
var webpack = require('webpack');
var merge = require('extendify')({ isDeep: true, arrays: 'concat' });
var ExtractTextPlugin = require('extract-text-webpack-plugin');
var extractCSS = new ExtractTextPlugin('styles.css');
var currentEnv = process.env.ASPNETCORE_ENVIRONMENT
var currentEnvConfig = require('./webpack.' + currentEnv)
var common = {
resolve: {
extensions: ['', '.js', '.ts']
},
module: {
loaders: [
{ test: /\.ts$/, loader: 'ts-loader' },
{ test: /\.html$/, loader: 'raw-loader' },
{ test: /\.css$/, loader: currentEnv != 'dev' ? extractCSS.extract(['css']) : 'css-loader'},
{ test: /\.(png|jpe?g|gif|svg|woff|woff2|ttf|eot|ico)$/, loader: 'file?name=assets/[name].[hash].[ext]'}
]
},
entry: {
app: './app/main.ts',
vendor: ['./app/vendor.ts'],
pollfills: ['./app/polyfills.ts']
},
output: {
path: 'wwwroot/dist/',
filename: '[name].js',
publicPath: '/dist/'
},
plugins: [
new webpack.optimize.CommonsChunkPlugin(/* chunkName= */"vendor", /* filename= */"vendor.js"),
new webpack.optimize.CommonsChunkPlugin(/* chunkName= */"polyfills", /* filename= */"polyfills.js")
//new webpack.optimize.CommonsChunkPlugin({
// name: ['app', 'vendor', 'polyfills']
//}),
]
};
if (currentEnv != 'dev'){
common = merge(common, currentEnvConfig)
}
module.exports = common;
我的ProdOne-test和DevWebpack配置文件目前没有任何内容,所以我没有包括
var webpack = require('webpack');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
const ENV = process.env.ASPNETCORE_ENVIRONMENT = process.env.ASPNETCORE_ENVIRONMENT = 'production';
module.exports = {
plugins: [
new webpack.NoErrorsPlugin(),
new webpack.optimize.DedupePlugin(),
new webpack.optimize.UglifyJsPlugin(),
new webpack.DefinePlugin({
'process.env': {
'ENV': 'prod'
}
})
]
};
更新:如果我将文件的顺序更改为
<script src="~/dist/polyfills.js"></script>
<script src="~/dist/vendor.js"></script>
<script src="~/dist/app.js"></script>
import 'reflect-metadata';
import 'zone.js/dist/zone';