フォルダ名、.css、.ts、spec.ts、app.module.tsなどのすべてのコンポーネントファイルを手動で編集する以外に、Angular CLIを使用してコンポーネントの名前を変更するためのショートカットはありますか。
いいえ!
Component createコマンドを使用して生成されたすべてのファイルの名前を変更するコマンドはありません。そのため、作成されたts
、html
、css/scss
、.spec.ts
ファイルは手動で名前変更/編集する必要があります。
私はangular cli
を頻繁に使用していますが、角度コンポーネントを作成して名前を変更する必要がある場合があるので、これはいいコマンドだと思います。この名前変更コマンドが存在しないため、作成されたAngularコンポーネント、ディレクティブなどを削除してから再度コマンドを実行してコンポーネントを作成するのは非常に面倒です。
これはこの機能を追加するためのディスカッションリンクです 角度成分の名前を変更
現在、Angular CLIは、コードの名前変更やリファクタリングの機能をサポートしていません。
あなたはいくつかのIDEの助けを借りてそのような機能を達成することができます。
Intellij、Eclipse、VSCodeなどはデフォルトでリファクタリングをサポートしています。
今日ではVSCodeはいくらか上昇傾向を見せています、個人的には私はこのファンです
VSCodeによるリファクタリング
参照の決定 : - VSコードは、変数を選択してショートカットSHIFT
+ F12
を押すことによって、変数のすべての参照を見つけるのに役立ちます。これはType Scriptで非常にうまく機能します。
すべての参照インスタンスの名前変更 : - F2
を押すとポップアップが表示され、値を変更して[enter]をクリックするとすべての参照インスタンスが更新されます。
ファイル名とインポート名の変更 プラグインを使ってファイル名とインポート参照名を変更できます。詳細を見つけることができます ここ
変数とファイルの名前を変更した後に上記の手順を使用すると、角度コンポーネントの名前変更を実現できます。
更新:あなたのコンポーネントの名前を変更するために、あなたは使うことができます:ng-rn
npm i ng-rn
使用方法
cd /path/to/angular-project/
ng-rn old-button fancy-button
ツールはsrc/app /内のコンポーネントを探します。コンポーネントがsrc/app/my-vip-componentsのようなもっと複雑なパスにある場合は、ディレクトリを変更するだけです。
cd src/app/my-vip-components
ng-rn old-button fancy-button
変更する前に、バックアップを作成してください:)
angular-rename を参照してください
インストール
npm install -g angular-rename
つかいます
$ ./angular-rename OldComponentName NewComponentName
最初の答えが示したように、現時点ではコンポーネントの名前を変更する方法はありませんので、私たちはみんな回避策について話しているだけです!これが私がすることです:
あなたが好きな新しいコンポーネントを作成します。
ng生成コンポーネントnewName
Visual Studioのコードエディタまたはその他のエディタを使用して、コードやピースを並べて移動すると便利です。
Linuxでは、grep&sed(find&replace)を使用して参照を検索/置換します。
grep -ir "oldname"
あなたのフォルダにcdする
sed -iの/ oldName/newName/g '*
私は個人的に同じコマンドを見つけていません。新しいコンポーネント(名前を変更)を作成し、前のコンポーネントのhtml
、css
、およびts
をコピーして貼り付けます。 ts
では、明らかにクラス名が置き換えられます。最も安全な方法ですが、少し時間がかかります。