zoukankan      html  css  js  c++  java
  • umi webpack

    现象

    umi项目启动时报错:

    PS C:xxx> yarn start:dev
    yarn run v1.22.10
    $ cross-env REACT_APP_ENV=local MOCK=none UMI_ENV=dev umi dev
    Bundle with webpack 5...
    Starting the development server...
    Invalid configuration object. Webpack has been initialised using a configuration object that does not match the API schema.
     - configuration[0] has an unknown property 'experiments'. These properties are valid:
       object { amd?, bail?, cache?, context?, dependencies?, devServer?, devtool?, entry?, externals?, infrastructureLogging?, loader?, mode?, module?, name?, node?, optimization?, output?, parallelism?, performance?, plugins?, profile?, recordsInputPath?, recordsOutputPath?, recordsPath?, resolve?, resolveLoader?, serve?, stats?, target?, watch?, watchOptions? }
    WebpackOptionsValidationError: Invalid configuration object. Webpack has been initialised using a configuration object that does not match the API schema.
     - configuration[0] has an unknown property 'experiments'. These properties are valid:
       object { amd?, bail?, cache?, context?, dependencies?, devServer?, devtool?, entry?, externals?, infrastructureLogging?, loader?, mode?, module?, name?, node?, optimization?, output?, parallelism?, performance?, plugins?, profile?, recordsInputPath?, recordsOutputPath?, recordsPath?, resolve?, resolveLoader?, serve?, stats?, target?, watch?, watchOptions? }
        at Object.webpack (C:xxx
    ode_modules@umijsdepscompiledwebpack4undle4.js:138983:9)
        at Bundler.setupDevServerOpts (C:xxx
    ode_modules@umijsundler-webpacklibindex.js:193:40)
        at C:xxx
    ode_modules@umijspreset-built-inlibpluginscommandsdevdev.js:300:30
        at Generator.next (<anonymous>)
        at asyncGeneratorStep (C:xxx
    ode_modules@umijspreset-built-inlibpluginscommandsdevdev.js:74:103)
        at _next (C:xxx
    ode_modules@umijspreset-built-inlibpluginscommandsdevdev.js:76:194)
    

    原因

    使用了webpack5的高版本umi(如3.5.7)的问题,

    解决

    方案一

    感谢:react umi项目运行报错 提供的帮助

    降低版本后可行

    项目中package.json中umi包版本如下:

    "dependencies": {
      //```
      "umi": "^3.4.1",
      //···
    }
    

    去掉^
    重新装包yarnyarn install
    重新启动项目

    报错Cannot find module 'webpack/lib/ModuleFilenameHelpers':

    Error: Cannot find module 'webpack/lib/ModuleFilenameHelpers'
    Require stack:
    - C:xxx
    ode_modulesesbuild-loaderdistminify-plugin.js
    - C:xxx
    ode_modulesesbuild-loaderdistindex.js
    - C:xxx
    ode_modules@umijsplugin-esbuildlibindex.js
    - C:xxx
    ode_modules@umijscorelibServiceutilspluginUtils.js        
    - C:xxx
    ode_modules@umijscorelibServiceService.js
    - C:xxx
    ode_modules@umijscorelibindex.js
    - C:xxx
    ode_modulesumilibServiceWithBuiltIn.js
    - C:xxx
    ode_modulesumilibforkedDev.js
        at Function.Module._resolveFilename (node:internal/modules/cjs/loader:941:15)
        at Function.mod._resolveFilename (C:xxx
    ode_modules@umijsundler-webpacklib
    equireHook.js:49:28)
        at Function.Module._load (node:internal/modules/cjs/loader:774:27)
        at Module.require (node:internal/modules/cjs/loader:1013:19)
        at require (node:internal/modules/cjs/helpers:93:18)
    plugin.js:8:33)
        at Module._compile (node:internal/modules/cjs/loader:1109:14)
        at Module._compile (C:xxx
    ode_modules@umijsdepscompiledabelun    at Module._extensions..js (node:internal/modules/cjs/loader:1138:10)
        at Object.newLoader [as .js] (C:xxx
    ode_modules@umijsdepscompiledabelundle.js:146843:7)
        at Module.load (node:internal/modules/cjs/loader:989:32)
        at Function.Module._load (node:internal/modules/cjs/loader:829:14)
        at Module.require (node:internal/modules/cjs/loader:1013:19)
        at require (node:internal/modules/cjs/helpers:93:18)
        at Object.<anonymous> (C:xxx
    ode_modulesesbuild-loaderdistindex.js:10:41)
    

    运行npm link webpack解决

    方案二

    全局搜索并去掉项目中的webpack5配置项

    方案三

    低版本umi的同学提交一下yarn.lock文件,新装同学重新yarn install

  • 相关阅读:
    centos7查看系统版本,查看机器位数x86-64
    CentOS7下安装mysql5.6修改字符集为utf8并开放端口允许远程访问
    CentOS7下mysql5.6修改默认编码
    使用swagger作为restful api的doc文档生成
    在idea中maven项目jdk编译version总是跳到1.5
    国内maven镜像,快的飞起
    醒悟,珍惜时间,学会利用资源
    重定向Http status code 303 和 302
    jackson简单使用,对象转json,json转对象,json转list
    2017 年度码云新增项目排行榜 TOP 50,为它们打“call”
  • 原文地址:https://www.cnblogs.com/yanjiez/p/15118258.html
Copyright © 2011-2022 走看看