首页 > 解决方案 > Angular 构建 node-sass 依赖

问题描述

我已升级到 Angular 11,并且在构建过程中开始收到以下消息。

node-sass' usage is deprecated and will be removed in a future major version. To opt-out of the deprecated behaviour and start using 'sass' uninstall 'node-sass

奇怪的是我的 package.json 中没有包含 node-sass。它看起来像这样:

  "dependencies": {
    "@angular/animations": "~11.1.1",
    "@angular/common": "~11.1.1",
    "@angular/compiler": "~11.1.1",
    "@angular/core": "~11.1.1",
    "@angular/forms": "~11.1.1",
    "@angular/platform-browser": "~11.1.1",
    "@angular/platform-browser-dynamic": "~11.1.1",
    "@angular/router": "~11.1.1",
    "@circlon/angular-tree-component": "^10.0.2",
    "@ng-bootstrap/ng-bootstrap": "^9.0.2",
    "@ng-select/ng-select": "^6.0.0",
    "chart.js": "^2.9.4",
    "i": "^0.3.6",
    "jquery": "^3.5.1",
    "ng-block-ui": "^3.0.2",
    "ng2-charts": "^2.4.2",
    "ngx-color-picker": "^11.0.0",
    "ngx-file-drop": "^11.0.0",
    "ngx-toastr": "^13.2.0",
    "npm": "^7.5.2",
    "rxjs": "^6.6.3",
    "tslib": "^2.1.0",
    "zone.js": "^0.11.3"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~0.1101.2",
    "@angular/cli": "~11.1.2",
    "@angular/compiler-cli": "~11.1.1",
    "@angular/language-service": "~11.1.1",
    "@angular/localize": "^11.1.1",
    "@types/jasmine": "~3.6.0",
    "@types/jasminewd2": "^2.0.8",
    "@types/jquery": "^3.5.5",
    "@types/node": "^14.14.22",
    "codelyzer": "^6.0.0",
    "jasmine-core": "~3.6.0",
    "jasmine-spec-reporter": "^6.0.0",
    "karma": "~5.2.3",
    "karma-chrome-launcher": "~3.1.0",
    "karma-coverage-istanbul-reporter": "~3.0.2",
    "karma-jasmine": "~4.0.0",
    "karma-jasmine-html-reporter": "^1.5.0",
    "protractor": "~7.0.0",
    "terser": "^5.5.1",
    "ts-node": "^9.1.1",
    "tslint": "^6.1.3",
    "typescript": "^4.1.3"
  },

我想到的唯一一件事是在父目录中是另一个 package.json 定义node-sass为依赖项。

为什么我会收到此消息?可能是因为父 package.json?

标签: angularnode-sass

解决方案


推荐阅读