Webpack配置问题

时间:2018-03-30 04:23:59

标签: webpack

当我尝试运行Webpack时出现此错误,我不知道为什么。 使用Webpack 4.不知道为什么它没有任何建议。 我跟随生存的Webpack书,我确信我做了正确的步骤。 我试着改变位置并移动它。我还尝试删除loadCSS末尾的大括号,但那时不调用该函数。

[nodemon] watching: webpack.config.js
[nodemon] starting `webpack-dev-server --env development`
/Users/oscar/batcave/webpack-demo/webpack.config.js:20
  parts.loadCSS(),
        ^

TypeError: parts.loadCSS is not a function
    at Object.<anonymous> (/Users/oscar/batcave/webpack-demo/webpack.config.js:20:9)
    at Module._compile (module.js:660:30)
    at Object.Module._extensions..js (module.js:671:10)
    at Module.load (module.js:573:32)
    at tryModuleLoad (module.js:513:12)
    at Function.Module._load (module.js:505:3)
    at Module.require (module.js:604:17)
    at require (internal/module.js:11:18)
    at WEBPACK_OPTIONS (/Users/oscar/batcave/webpack-demo/node_modules/webpack-cli/bin/convert-argv.js:133:13)
    at requireConfig (/Users/oscar/batcave/webpack-demo/node_modules/webpack-cli/bin/convert-argv.js:135:6)

webpack.config.js

const HtmlWebpackPlugin = require('html-webpack-plugin');
const SystemBellPlugin = require('system-bell-webpack-plugin');
const WebpackNotifierPlugin = require('webpack-notifier');
const FriendlyErrorsWebpackPlugin = require('friendly-errors-webpack-plugin');

const parts = './config/webpack.parts';
const merge = require('webpack-merge');

const commonConfig = merge([
  {
    plugins: [
      new HtmlWebpackPlugin({
        title: 'webpack demo',
      }),
      new SystemBellPlugin(),
      new WebpackNotifierPlugin(),
      new FriendlyErrorsWebpackPlugin(),
    ],
  },
  parts.loadCSS(),
]);

const productionConfig = merge([]);

const developmentConfig = merge([parts.devServer]);

module.exports = mode => {
  if (mode === 'production') {
    return merge(commonConfig, productionConfig, { mode });
  }
  return merge(commonConfig, developmentConfig, { mode });
};

webpack.parts.js

exports.devServer = ({ host, port } = {}) => ({
  devServer: {
    stats: 'errors-only',
    host,
    port,
    open: true,
    overlay: true,
  },
});

exports.loadCSS = ({ include, exclude } = {}) => ({
  module: {
    rules: [
      {
        test: /\.css$/,
        include,
        exclude,

        use: ['style-loader', 'css-loader'],
      },
    ],
  },
});

1 个答案:

答案 0 :(得分:0)

我认为您需要更改exports - &gt; module.exports

module.exports.devServer = ({ host, port } = {}) => ({
  devServer: {
    stats: 'errors-only',
    host,
    port,
    open: true,
    overlay: true,
  },
});

module.exports.loadCSS = ({ include, exclude } = {}) => ({
  module: {
    rules: [
      {
        test: /\.css$/,
        include,
        exclude,

        use: ['style-loader', 'css-loader'],
      },
    ],
  },
});

修改

const parts = require('./config/webpack.parts');

https://github.com/NSchrading/intro-spacy-nlp/blob/master/subject_object_extraction.py