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

Angular v15迁v16(NX环境)SCSS资源路径解析错误求助

NX环境下Angular 16兼容SCSS中~开头资源路径的解决方案

方法1:配置Webpack别名(适用于Webpack构建)

在项目根目录创建或修改webpack.config.js,添加针对~apps的路径别名映射:

const path = require('path');

module.exports = {
  resolve: {
    alias: {
      '~apps': path.resolve(__dirname, 'apps'),
    },
  },
};

如果是NX项目,也可以在对应项目的project.json文件的targets.build.configurations中嵌入Webpack配置:

{
  "targets": {
    "build": {
      "options": {
        "customWebpackConfig": {
          "path": "./webpack.config.js"
        }
      }
    }
  }
}

方法2:配置Esbuild别名(适用于Esbuild构建)

若项目使用Angular 16默认的Esbuild构建器,在项目的project.json中修改build目标的esbuildOptions:

{
  "targets": {
    "build": {
      "options": {
        "builder": "@angular-devkit/build-angular:browser-esbuild",
        "esbuildOptions": {
          "alias": {
            "~apps": "./apps"
          }
        }
      }
    }
  }
}

方法3:配置Sass预处理器路径

通过Sass的includePaths简化路径引用(可配合别名使用),在项目的project.json的build选项中添加:

{
  "targets": {
    "build": {
      "options": {
        "stylePreprocessorOptions": {
          "includePaths": ["./apps"]
        }
      }
    }
  }
}

配置后,SCSS中的路径可简化为url("platform/src/assets/img/bank-card-overlay.png"),若要保留~前缀,仍需结合前两种别名配置。


内容的提问来源于stack exchange,提问作者Mahdi Zarei

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 01:38:28