のドキュメント を読んだことがあります。scss
を使いたい場合は、次のコマンドを実行する必要があります。
ng set defaults.styleExt scss
しかし、それをしてそのファイルを作成しても、コンソールにこのエラーが表示されます。
styles.bundle.js:33Uncaught Error: Module build failed: Error: ENOENT: no such file or directory, open '/Users/Egen/Code/angular/src/styles.css'(…)
これをどのように修正しますか?
Angular 6については、 公式文書を確認してください
注:@angular/cli
より古い6.0.0-beta.6
バージョンでは、ng set
の代わりにng config
を使用してください。
デフォルトのcss
スタイルで設定された既存のangular-cliプロジェクトでは、いくつかのことをする必要があります。
scss
に変更します.angular-cli.json(Angular 5.x以前)またはangular.json(Angular 6+)に手動で変更するか、次のコマンドを実行します。
ng config defaults.styleExt=scss
エラーが発生した場合:Value cannot be found.
コマンドを使用します。
ng config schematics。@ schematics/angular:component.styleext scss
(* source: Angular CLI SASSオプション )
既存の.css
ファイルの名前を.scss
に変更します(例:styles.cssおよびapp/app.component.css)。
CLIでstyles.scssを見つけます。
Angular.jsonの
apps[0].styles
でファイル拡張子を手動で変更する
新しいファイル名と一致するように、コンポーネント内の
styleUrls
を変更します。
@Serginhoが述べたように、ng new
コマンドを実行するときにスタイル拡張子を設定できます
ng new your-project-name --style=scss
将来作成するすべてのプロジェクトにデフォルトを設定したい場合は、次のコマンドを実行してください。
ng config --global defaults.styleExt=scss
Ng6以降では、これはルートレベルでangular.json
に追加された以下のコードで達成できます。
.angular.json
を手動で変更します。
"schematics": {
"@schematics/angular:component": {
"styleext": "scss"
}
}
angular.jsonファイルを開く
からの変更
"schematics": {}
に
"schematics": {
"@schematics/angular:component": {
"styleext": "scss"
}
}
"src/styles.css"
に
"src/styles.scss"
次に、すべての.css
ファイルを確認して名前を変更し、.css to .scss
からcomponent.tsファイルのstyleUrlsを更新します
Angular CLI用のCSSプリプロセッサ統合CLI:6.0.3
新しいプロジェクトを生成するときは、スタイルファイルにどの拡張子を付けるかを定義することもできます。
ng new sassy-project --style=sass
または、既存のプロジェクトにデフォルトスタイルを設定します。
ng config schematics.@schematics/angular:component.styleext scss
Angular 6の場合、
ng config schematics.@schematics/angular:component.styleext scss
注意:@ schematics/angularはAngular CLIのデフォルトの回路図です。
使用コマンド:
ng config schematics.@schematics/angular:component.styleext scss
Ng6では、同様の 投稿 に従って、このコマンドを使う必要があります。
ng config schematics.@schematics/angular:component '{ styleext: "scss"}'
このスレッドに出くわす Nrwl拡張機能 のユーザーのために:すべてのコマンドはNx(例えばng generate component myCompent
)によってインターセプトされてAngularCLIに渡されます。
SCSSをNxワークスペースで機能させるためのコマンド。
ng config schematics.@nrwl/schematics:component.styleext scss
強引な変更を適用することができます。これは変更するよう働きますが、より長いプロセスです。
アプリフォルダに移動しますsrc/app
このファイルを開く:app.component.ts
このコードをstyleUrls: ['./app.component.css']
からstyleUrls: ['./app.component.scss']
に変更してください。
保存して閉じます。
同じフォルダ内src/app
App.component.cssファイルの拡張子を(app.component.scss)に変更します。
他のすべてのコンポーネントについてもこの変更に従ってください。 (例:自宅、について、連絡先など)
angular.json設定ファイルが次にあります。プロジェクトのルートにあります。
Cssを検索して置き換えて、(scss)に変更します。
保存して閉じます。
最後に、ng serve -o
を再起動してください。
コンパイラがあなたに文句を言ってきたら、ステップをもう一度やり直してください。
必ずapp/srcの手順に従ってください。