【问题标题】:cannot find module css-loader while doing ng build -prod with angular-cli@1.0.0-beta.21使用 angular-cli@1.0.0-beta.21 进行 ng build -prod 时找不到模块 css-loader
【发布时间】:2017-06-12 21:25:40
【问题描述】:

我有以下 package.json 配置

"dependencies": {
"@angular/common": "2.2.1",
"@angular/compiler": "2.2.1",
"@angular/core": "2.2.1",
"@angular/forms": "2.2.1",
"@angular/http": "2.2.1",
"@angular/platform-browser": "2.2.1",
"@angular/platform-browser-dynamic": "2.2.1",
"@angular/router": "3.2.1",
"@angular2-material/button": "^2.0.0-alpha.8-2",
"@angular2-material/button-toggle": "^2.0.0-alpha.8-2",
"@angular2-material/card": "^2.0.0-alpha.8-2",
"@angular2-material/checkbox": "^2.0.0-alpha.8-2",
"@angular2-material/core": "^2.0.0-alpha.8-2",
"@angular2-material/grid-list": "^2.0.0-alpha.8-2",
"@angular2-material/icon": "^2.0.0-alpha.8-2",
"@angular2-material/input": "^2.0.0-alpha.8-2",
"@angular2-material/list": "^2.0.0-alpha.8-2",
"@angular2-material/menu": "^2.0.0-alpha.8-2",
"@angular2-material/progress-bar": "^2.0.0-alpha.8-2",
"@angular2-material/progress-circle": "^2.0.0-alpha.8-2",
"@angular2-material/radio": "^2.0.0-alpha.8-2",
"@angular2-material/sidenav": "^2.0.0-alpha.8-2",
"@angular2-material/slide-toggle": "^2.0.0-alpha.8-2",
"@angular2-material/slider": "^2.0.0-alpha.8-2",
"@angular2-material/tabs": "^2.0.0-alpha.8-2",
"@angular2-material/toolbar": "^2.0.0-alpha.8-2",
"@angular2-material/tooltip": "^2.0.0-alpha.8-2",
"ng2-material-dropdown":"0.5.4",
"ng2-toasty": "^2.2.2",
"@types/hammerjs": "^2.0.30",
"angular2-cookie": "1.2.3",
"angular2-material-datepicker": "^0.5.0",
"angulartics2": "^1.1.9",
"core-js": "^2.4.1",
"d3": "^4.3.0",
"es6-shim": "0.35.1",
"ng2-datetime-picker": "^0.11.3",
"ng2-tag-input": "0.6.0",
"ng2-auto-complete":"0.8.2",
"reflect-metadata": "0.1.3",
"rickshaw": "^1.6.0",
"rxjs": "5.0.0-beta.12",
"ts-helpers": "^1.1.1",
"zone.js": "^0.6.23",
"ng2-file-upload": "^1.1.4-2",
"angular2-color-picker": "^1.3.0",
"@ng-bootstrap/ng-bootstrap": "1.0.0-alpha.16"
  },
  "devDependencies": {
"@types/jasmine": "^2.2.30",
"angular-cli": "1.0.0-beta.21",
"codelyzer": "~0.0.26",
"jasmine-core": "2.4.1",
"jasmine-spec-reporter": "2.5.0",
"karma": "1.2.0",
"karma-chrome-launcher": "^2.0.0",
"karma-cli": "^1.0.1",
"karma-jasmine": "^1.0.2",
"karma-remap-istanbul": "^0.2.1",
"protractor": "4.0.5",
"ts-node": "1.2.1",
"tslint": "3.13.0",
"typescript": "2.0.2",
"typings": "1.3.1"

}

ng build -prod 工作正常,但是突然相同的配置给出了以下错误

ERROR in ./src/styles.css
Module build failed: Error: Cannot find module '/Volumes/DATA/new-    clone-test/nbw/node_modules/css-loader/index.js?sourcemap&minimize'
at Function.Module._resolveFilename (module.js:440:15)
at Function.Module._load (module.js:388:25)
at Module.require (module.js:468:17)
at require (internal/module.js:20:19)
at loadLoader (/Volumes/DATA/new-clone-test/nbw/node_modules/loader-runner/lib/loadLoader.js:13:17)

我不确定是什么导致了这个问题。任何帮助都感激不尽。

【问题讨论】:

  • 您是否安装了css-loader 模块?
  • 是的。它会自动安装。
  • 是的,我们遇到了同样的问题。从今天开始,我们也在经历同样的事情。我们的假设是 css 加载器是自动更新的,因为它是 angular-cli 的依赖项。我们整天都在尝试各种解决方案,但没有结果。所以我们不会尝试在没有 package.json 的情况下更改 css-loader 版本

标签: angular npm angular-cli css-loader


【解决方案1】:

我遇到了和你一样的问题。作为临时解决方案,我改为“ng build --dev”。使用此命令,加载程序使用 webpack-build-development.js 而不是 webpack-build-production.js 并获取 'css-loader?sourcemap' 而不是 'css-loader?sourcemap&minimize'。

【讨论】:

    【解决方案2】:

    感谢 Florinache!

    降级到 angular-cli "1.0.0-beta.19-3" 对我有用。从今天开始,我在所有项目中都遇到了同样的问题......

    {
      "devDependencies": {
           ...
           "angular-cli": "1.0.0-beta.19-3",
           ...
       }
    }
    

    【讨论】:

      【解决方案3】:

      从今天开始遇到同样的问题。

      我找到的解决方案是将 package.json 文件中的 angular-cli 依赖项更改为“1.0.0-beta.19-3”并重新安装 npm 包。

      {
        "devDependencies": {
             ...
             "angular-cli": "1.0.0-beta.19-3",
             ...
             }
      }
      

      希望这会有所帮助!

      【讨论】:

      • 我在工作的所有内部包中都出现了同样的问题,因为两三天前......这也是我们来自 angular-cli 的版本,我打开 package.json 文件并看到 webpack 配置如下:"@ngtools/webpack": "^1.0.0", ... 并用npm view @ngtools/webpack time 查看它的历史我可以观察到最新版本 1.2.4 发布于 01-20-2017 (七天前)我现在正在努力,但我对这个最后发布的版本持怀疑态度......
      • 有办法强制 angular-cli在上面使用@ngtools/webpack的1.2.3版本吗?
      • 您是否尝试过指定要使用的确切版本?例如:"@ngtools/webpack": "1.2.4"?
      【解决方案4】:

      貌似extract-text-webpack-plugin升级为RC了, 尝试在您的 package.json 中将 extract-text-webpack-plugin 版本覆盖为“2.0.0-beta.4”。

      【讨论】:

        【解决方案5】:

        mkishorem 是对的。

        我也遇到了同样的错误,并通过添加覆盖代码进行了修复 在 package.json 如下所示

        "devDependencies": {
         "extract-text-webpack-plugin": "2.0.0-beta.5" 
         }
        

        无需全部降级为 angular-cli。

        【讨论】:

          【解决方案6】:

          更新到@angular/* 2.3.1 版本

          【讨论】:

          • 为什么?什么问题,为什么更新可以解决它?
          猜你喜欢
          • 2017-03-19
          • 2020-12-03
          • 1970-01-01
          • 2019-01-14
          • 1970-01-01
          • 2020-05-22
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多