【问题标题】:Unable to run the React-Redux project. Webpack error无法运行 React-Redux 项目。 Webpack 错误
【发布时间】:2020-02-01 16:45:19
【问题描述】:

$ npm 开始

「wds」:配置对象无效。 Webpack 已使用与 API 模式不匹配的配置对象进行初始化。 - configuration.resolve 具有未知属性“modulesDirectories”。这些属性是有效的: object { alias?, aliasFields?, cachePredicate?, cacheWithContext?, concord?, descriptionFiles?, enforceExtension?, enforceModuleExtension?, extensions?, fileSystem?, mainFields?, mainFiles?, moduleExtensions?, modules?, plugins?, resolver?,符号链接?、unsafeCache?、useSyncFileSystemCalls? } -> 解析器选项

webpack.config.js

var HtmlWebpackPlugin = require('html-webpack-plugin');

module.exports = {
    mode: 'development',
    resolve: {
        extensions: ['.js', '.jsx', '.css'],
        modulesDirectories: [
            'node_modules'
          ]     
    },
    module: {
        rules: [
            {
                test: /\.jsx?$/,
                loader: 'babel-loader'
            },
            {
                test:/\.css$/,
                use:['style-loader','css-loader']
            }
        ]
    },
    plugins: [new HtmlWebpackPlugin({
        template: './src/index.html'
    })],
    devServer: {
        historyApiFallback: true
    },
    externals: {
        // global app config object
        config: JSON.stringify({
            apiUrl: 'http://localhost:4000'
        })
    }
} 

package.json

{
  "name": "react-redux-registration-login-example",
  "version": "1.0.0",
  "repository": {
    "type": "git",
    "url": "https://github.com/cornflourblue/react-redux-registration-login-example.git"
  },
  "license": "MIT",
  "scripts": {
    "build": "webpack --mode production",
    "start": "webpack-dev-server --open"
  },
  "dependencies": {
    "axios": "^0.19.0",
    "history": "^4.6.3",
    "react": "^16.0.0",
    "react-dom": "^16.0.0",
    "react-redux": "^5.0.5",
    "react-router-dom": "^4.1.2",
    "redux": "^3.7.2",
    "redux-logger": "^3.0.6",
    "redux-thunk": "^2.2.0",
    "semantic-ui-react": "^0.88.1",
    "style-loader": "^1.0.0"
  },
  "devDependencies": {
    "babel-core": "^6.26.0",
    "babel-loader": "^7.1.5",
    "babel-preset-env": "^1.6.1",
    "babel-preset-react": "^6.16.0",
    "babel-preset-stage-0": "^6.24.1",
    "html-webpack-plugin": "^3.2.0",
    "path": "^0.12.7",
    "webpack": "^4.41.0",
    "webpack-cli": "^3.0.8",
    "webpack-dev-server": "^3.1.3"
  }
}

【问题讨论】:

    标签: reactjs webpack webpack-dev-server webpack-style-loader


    【解决方案1】:

    如警告所述,resolve.modulesDirectories 不是有效属性。它是 Webpack 版本 1 中的一个选项,但自版本 2 起已重命名为 resolve.modules

    所以将你的配置更改为:

    resolve: {
      extensions: ['.js', '.jsx', '.css'],
      modules: [
        'node_modules'
      ]     
    },
    

    见:https://webpack.js.org/migrate/3/

    resolve.rootresolve.fallbackresolve.modulesDirectories

    这些选项被单个选项resolve.modules 替换。更多用法见resolving

    【讨论】:

      猜你喜欢
      • 2018-04-05
      • 1970-01-01
      • 2017-09-21
      • 2021-09-25
      • 1970-01-01
      • 1970-01-01
      • 2016-12-27
      • 2017-06-02
      • 1970-01-01
      相关资源
      最近更新 更多