You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular项目中Sass @import规则废弃警告的解决咨询

Angular项目中Sass @import规则废弃警告的解决咨询

我最近在运行我的Angular项目时,碰到了一堆Sass @import 规则的废弃警告,系统还提示有2条重复警告被省略了。这些警告明确说Sass的@import语法会在Dart Sass 3.0.0版本中被移除,具体的警告详情如下:

[WARNING] 2 repetitive deprecation warnings omitted. Run in verbose mode to see all warnings.
[plugin angular-sass]
angular:styles/global:styles:1:8:
  1 │ @import 'src/theme/global.scss';
    ╵ ~~~~~~~~~~~~~~~~~~~~~~~
null
▲
[WARNING] Deprecation [plugin angular-sass]
src/theme/global.scss:27:8:
 27 │ @import './variables.scss';
    ╵ ^
Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0.
More info and automated migrator: https://sass-lang.com/d/import
The plugin "angular-sass" was triggered by this import
angular:styles/global:styles:1:8:
  1 │ @import 'src/theme/global.scss';
    ╵ ~~~~~~~~~~~~~~~~~~~~~~~
▲
[WARNING] Deprecation [plugin angular-sass]
src/theme/global.scss:28:8:
 28 │ @import './fonts.scss';
    ╵ ^
Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0.
More info and automated migrator: https://sass-lang.com/d/import
The plugin "angular-sass" was triggered by this import
angular:styles/global:styles:1:8:
  1 │ @import 'src/theme/global.scss';
    ╵ ~~~~~~~~~~~~~~~~~~~~~~~
▲
[WARNING] Deprecation [plugin angular-sass]
src/theme/global.scss:29:8:
 29 │ @import './sizes.scss';
    ╵ ^
Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0.
More info and automated migrator: https://sass-lang.com/d/import
The plugin "angular-sass" was triggered by this import
angular:styles/global:styles:1:8:
  1 │ @import 'src/theme/global.scss';
    ╵ ~~~~~~~~~~~~~~~~~~~~~~~
▲
[WARNING] Deprecation [plugin angular-sass]
src/theme/global.scss:30:8:
 30 │ @import './miscellaneous.scss';
    ╵ ^
Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0.
More info and automated migrator: https://sass-lang.com/d/import
The plugin "angular-sass" was triggered by this import
angular:styles/global:styles:1:8:
  1 │ @import 'src/theme/global.scss';
    ╵ ~~~~~~~~~~~~~~~~~~~~~~~
▲
[WARNING] Deprecation [plugin angular-sass]
src/theme/global.scss:31:8:
 31 │ @import './positions.scss';
    ╵ ^
Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0.
More info and automated migrator: https://sass-lang.com/d/import
The plugin "angular-sass" was triggered by this import
angular:styles/global:styles:1:8:
  1 │ @import 'src/theme/global.scss';
    ╵ ~~~~~~~~~~~~~~~~~~~~~~~
▲

我的项目依赖配置(package.json片段)如下:

{
  "name": "",
  "version": "1.5.24",
  "author": "",
  "homepage": "",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build --prod",
    "lint": "ng lint"
  },
  "private": true,
  "dependencies": {
    "@angular/cdk": "20.1.5",
    "@angular/common": "20.1.6",
    "@angular/core": "20.1.6",
    "@angular/forms": "20.1.6",
    "@angular/platform-browser": "20.1.6",
    "@angular/platform-browser-dynamic": "20.1.6",
    "@angular/router": "20.1.6",
    "@capacitor-community/sqlite": "5.0.0",
    "@capacitor-firebase/authentication": "5.1.0",
    "@capacitor/android": "5.2.3",
    "@capacitor/app": "5.0.0",
    "@capacitor/camera": "5.0.0",
    "@capacitor/core": "5.2.3",
    "@capacitor/filesystem": "5.2.1",
    "@capacitor/haptics": "5.0.0",
    "@capacitor/ios": "5.2.3",
    "@capacitor/keyboard": "5.0.0",
    "@capacitor/network": "5.0.0",
    "@capacitor/preferences": "5.0.0",
    "@capacitor/splash-screen": "5.0.0",
    "@capacitor/status-bar": "5.0.0",
    "@ionic/angular": "8.7.2",
    "@sentry/angular": "^9.38.0",
    "@sentry/capacitor": "2.1.0",
    "@types/lodash": "4.14.178",
    "dayjs": "1.10.7",
    "firebase": "9.6.10",
    "guid-typescript": "1.0.9",
    "lodash": "4.17.21",
    "native-run": "^2.0.1",
    "rxjs": "7.5.0",
    "tslib": "2.8.1",
    "zone.js": "0.15.1"
  },
  "devDependencies": {
    "@angular-eslint/builder": "20.1.1",
    "@angular-eslint/eslint-plugin": "20.1.1",
    "@angular-eslint/eslint-plugin-template": "20.1.1",
    "@angular-eslint/template-parser": "20.1.1",
    "@angular/build": "^20.1.5",
    "@angular/cli": "20.1.5",
    "@angular/compiler": "20.1.6",
    "@angular/compiler-cli": "20.1.6",
    "@angular/language-service": "20.1.6",
    "@capacitor/cli": "5.0.0",
    "@ionic/angular-toolkit": "^11.0.1",
    "@sentry/cli": "2.20.7"
  }
}

目前我了解到这些警告是因为项目里的global.scss等文件还在使用旧的@import语法导入其他样式模块,想请教各位:

  1. 在当前Angular 20.x版本的项目中,应该把@import替换成什么新语法?
  2. 有没有自动化的迁移工具可以批量处理这些导入语句,避免手动修改出错?
  3. 迁移完成后需要做哪些验证,确保项目的样式渲染不受影响?

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.08 03:04:50