Angular 无效配置(Webpack)

Angular invalid configuration(Webpack)

我正在学习 angular 大约一个月。我正在关注我在互联网上找到的一系列视频。我被困在这个错误中,如下图所示。

webpack.server.config.js代码

const path = require('path');
const webpack = require('webpack');

module.exports = {
entry: { server: './server.ts' },
resolve: { extentions: ['.js', '.ts'] },
externals: [/{node_modules|main\..*\.js}/],
output: {
    path: path.join(__dirname, 'dist'),
    filename: '[name].js'
},
module: {
    rules: {
        test: /\.ts$/,
        loader: 'ts-loader'
    }
},
plugins: [
    new webpack.ContextReplacementPlugin(
        /(.+)?angular(\|\/)core(.+)?/,
        path.join(__dirname, 'src'),
        {}
    ),
    new webpack.ContextReplacementPlugin(
        /(.+)?express(\|\/)(.+)?/,
        path.join(__dirname, 'src'),
        {}
    )
  ]
}

Package.json

线索就在错误消息中。 rules需要是一个对象数组,而不是单个对象;并且 extensions 拼写为 s,其中您有第二个 t.

这里是固定版本:

webpack.server.config.js代码

const path = require('path');
const webpack = require('webpack');

module.exports = {
entry: { server: './server.ts' },
resolve: { extensions: ['.js', '.ts'] }, // CHANGED
externals: [/{node_modules|main\..*\.js}/],
output: {
    path: path.join(__dirname, 'dist'),
    filename: '[name].js'
},
module: {
    rules: [{                           // CHANGED
        test: /\.ts$/,
        loader: 'ts-loader'
    }]                                  // CHANGED
},
plugins: [
    new webpack.ContextReplacementPlugin(
        /(.+)?angular(\|\/)core(.+)?/,
        path.join(__dirname, 'src'),
        {}
    ),
    new webpack.ContextReplacementPlugin(
        /(.+)?express(\|\/)(.+)?/,
        path.join(__dirname, 'src'),
        {}
    )
  ]
}