したがって、私は自分のアプリを「ホワイトラベル化」して、複数のクライアント向けにデザインの複数のオプションを許可しようとしています。そして、私のコンポーネントのscss内で、この「テーマ」フォルダーの下にある「_variables.scss」をロードする必要があります。構造は次のようになります。
/
- themes
-- client-1
--- _variables.scss
-- client-2
--- _variables.scss
そして私のangular.jsonの中に、私はこの設定があります:
"projects": {
"client-1": {
...
"architect": {
"build": {
...
"options": {
...
"stylePreprocessorOptions": {
"includePaths": [
"themes/client-1"
]
},
"styles": [
"src/styles.scss",
]
...
}
...
}
},
"client-2": {
...
"architect": {
"build": {
...
"options": {
...
"stylePreprocessorOptions": {
"includePaths": [
"themes/client-2"
]
},
"styles": [
"src/styles.scss",
]
...
}
...
}
}
}
documentation によると、私はそれを正しく行っていますが、私のscssファイルは「変数」ファイルを正しくロードしていません。これは私のscssファイルのインポートです:
@import "variables";
これは発生するエラーです:
ERROR in ./src/app/app.component.scss
Module build failed (from ./node_modules/sass-loader/lib/loader.js):
@import "variables";
^
File to import not found or unreadable: variables.
in /Users/erick/Projects/sample-project/src/styles.scss (line 2, column 1)
ここにアプローチする方法の提案はありますか?
問題が見つかりました。
ロードしていたthemes/client-X
の代わりに src/themes/client-X
内部angular.json
。