angular-cliで作成されるテンプレートが気に入らないという声がありました。シングルクォーテーションが嫌だとか、ここの空白が気に入らないなど。私は長いものに巻かれる主義なので基本的には作成されたテンプレートで作りますが、こだわりの強い人のためにテンプレートを変更する方法を考えました。
準備
-
angular-cliをプロジェクトにインストールする。バージョンによってフォルダ構成が変わる可能性があるのでバージョンは固定で入れる。
npm install @angular/cli@1.0.0-beta.32.3 —save-dev
-
ファイルコピペするためのプラグインをインストールする。
npm install cpx —save-dev
-
テンプレを任意のディレクトリ(ここでは
cli-template
)にコピーするcp -r ./node_modules/@angular/cli/blueprints cli-template
-
cli-template
内のテンプレを自分の好きなテンプレートに書き換える。 -
package.json
ファイルのscripts
に次のコマンドを追加する。postinstall
コマンドは、npm install
コマンドが実行された後に実行されるコマンドで、node_modules
以下のテンプレートフォルダをcli-template
フォルダで上書きするコードです。package.json
"scripts": {
"ng": "ng",
"postinstall": "cpx 'cli-template/**/.' node_modules/@angular/cli/blueprints"
},
...略...
```
その後
ngコマンドを使うときはnpm scripts経由で実行します。
npm run ng g component piyopiyo
あとがき
こだわりを持つことも大事ですが、バージョンの変更で構成が変わったりがありますし、チームへの周知も必須です。危険なので出来る限りやめた方が良いです。