Angular.json assets配置未生效:npm库SCSS文件无法同步至src目录
解决Angular共享SCSS库文件未复制到src目录的问题
首先明确:你在angular.json里配置的assets规则,作用是将指定文件复制到构建输出目录(比如dist/你的项目名),而不是项目的src源码目录,所以这些文件不会出现在src层级下,这是正常的。
你不需要把SCSS文件复制到src目录才能使用,正确的做法是直接在项目的SCSS文件中引入npm库中的文件:
- 比如在项目的
styles.scss或其他组件SCSS文件中,直接通过npm包路径引入:
// 引入单个文件 @import '@company_appstore/company-shared/styles/你的mixin文件.scss'; // 如果你的库有汇总的index.scss,也可以直接引入这个文件 @import '@company_appstore/company-shared/styles/index.scss';
可选优化:简化引入方式
为了让使用你库的开发者更方便,可以在npm库的package.json中添加style字段,指向库的主SCSS文件:
{ "name": "@company_appstore/company-shared", "version": "x.x.x", "style": "./styles/index.scss" }
这样开发者只需要写一行就能引入所有共享的mixin、函数:
@import '@company_appstore/company-shared';
执行ng serve后,Angular会在构建过程中自动解析这些SCSS依赖,完全不需要把文件复制到src目录。
内容的提问来源于stack exchange,提问作者dcp3450
相关产品推荐
相关产品推荐

