除了手动编辑所有组件文件(如文件夹名、.css、.ts、spec.ts和app.module.ts)之外,在Angular CLI中有没有什么重命名组件的快捷方式?
当前回答
目前还没有rename cli命令。但我发现解决这个问题最简单的方法是在cli上生成一个新组件,并将内容复制到新组件中。 然后删除原始组件,在代码库中需要重命名为新组件名称的每个位置都会出现一个错误。一旦所有错误都处理好了,你就完成了!:)
另外,您还必须删除旧组件的导入语句。
其他回答
No!
没有任何命令会更改使用组件create命令生成的所有文件的名称。创建ts html css/scss。spec。ts 文件需要手动重命名/编辑。
我经常使用angular cli,我认为这是一个很好的命令,因为有时我们只是创建angular组件,需要重命名它们。由于没有这个重命名命令,删除已创建的angular组件、指令等,然后再次运行命令来创建该组件真的很痛苦。
下面是添加该特性的讨论链接
目前还没有rename cli命令。但我发现解决这个问题最简单的方法是在cli上生成一个新组件,并将内容复制到新组件中。 然后删除原始组件,在代码库中需要重命名为新组件名称的每个位置都会出现一个错误。一旦所有错误都处理好了,你就完成了!:)
另外,您还必须删除旧组件的导入语句。
目前,Angular CLI不支持重命名或重构代码的特性。
您可以在一些IDE的帮助下实现这样的功能。
Intellij, Eclipse, VSCode等。默认支持重构。
现在VSCode呈现出一些上升趋势,我个人是它的粉丝
用VSCode重构
确定基准:- VS Code帮助你通过选择变量并按快捷键SHIFT + F12来查找变量的所有引用。这与类型脚本一起工作得非常好。
重命名所有引用实例:- 找到所有的引用后,你可以按F2将打开一个弹出窗口,你可以改变的值,并按enter,这将更新引用的所有实例。
重命名文件和导入 您可以使用插件重命名文件及其导入引用。更多细节可以在这里找到
通过上述步骤,在重命名变量和文件后,您可以实现角组件的重命名。
正如第一个答案所指出的,目前没有办法重命名组件,所以我们都只是在谈论变通办法! 这就是我所做的:
创建您喜欢的新组件。 生成组件newName 使用Visual studio代码编辑器或任何其他编辑器,然后方便地移动代码/块并排! 在Linux中,使用grep和sed (find & replace)来查找/替换引用。 Grep -ir "oldname" CD文件夹 sed -i 's/oldName/newName/g' * .使用实例
如果你使用VS Code,你可以重命名。ts, .html, .css/。scss .spec。ts文件和IDE将为您处理导入。因此,从组件中导入文件的文件(如app.module.ts)将不会产生任何抱怨。但是,您仍然必须在使用组件的任何地方重命名组件名称。
推荐文章
- NullInjectorError: AngularFirestore没有提供程序
- 如何在Angular2中截断文本?
- 如何在Angular2 ngSwitch语句中使用typescript enum值
- Angular CLI错误:serve命令需要在Angular项目中运行,但是找不到项目定义
- 找到合成属性@panelState。请在您的应用程序中包含“BrowserAnimationsModule”或“NoopAnimationsModule”。
- 在Angular中上传文件?
- 模板驱动表单和响应式表单之间的实际区别是什么?
- Angular 2+和debounce
- 如何以及在哪里使用::ng-deep?
- 禁用在角材质对话框区域外单击以关闭对话框(angular 4.0+版本)
- Angular 2模板中的标签是什么意思?
- 如何扩展/继承组件?
- 属性“of”在类型“typeof”的Observable上不存在
- 如何设置<iframe src="…">没有引起'不安全值'异常?
- 何时使用“npm start”,何时使用“ng serve”?