除了手动编辑所有组件文件(如文件夹名、.css、.ts、spec.ts和app.module.ts)之外,在Angular CLI中有没有什么重命名组件的快捷方式?
当前回答
Yes!
现在有了。
有一个扩展的VS Code为你做所有这些步骤。它叫做重命名Angular组件。
我希望将它移植到WebStorm和稍后的示意图。
以前,在VS Code中至少需要三个半自动步骤。这个扩展做所有这些。
我意识到这是在推广我自己的解决方案。但它是免费的、开源的,是完整的答案。如果它不能做你想要的所有事情,你可以在回购上发布问题,它会得到改进。
其他回答
在WebStorm中,你可以右键点击TypeScript文件中组件的名称→重构→重命名,它会在任何地方更改名称。
虽然OP请求CLI命令,但一些答案集中在ide上。在这个回答中,我只是确认,当前的WebStorm/IntelliJ允许重命名组件。所有需要做的就是尝试重命名.ts文件中的类。你会看到:
并且将在所有相关的地方进行重命名。
Yes!
现在有了。
有一个扩展的VS Code为你做所有这些步骤。它叫做重命名Angular组件。
我希望将它移植到WebStorm和稍后的示意图。
以前,在VS Code中至少需要三个半自动步骤。这个扩展做所有这些。
我意识到这是在推广我自己的解决方案。但它是免费的、开源的,是完整的答案。如果它不能做你想要的所有事情,你可以在回购上发布问题,它会得到改进。
目前还没有rename cli命令。但我发现解决这个问题最简单的方法是在cli上生成一个新组件,并将内容复制到新组件中。 然后删除原始组件,在代码库中需要重命名为新组件名称的每个位置都会出现一个错误。一旦所有错误都处理好了,你就完成了!:)
另外,您还必须删除旧组件的导入语句。
正如第一个答案所指出的,目前没有办法重命名组件,所以我们都只是在谈论变通办法! 这就是我所做的:
创建您喜欢的新组件。 生成组件newName 使用Visual studio代码编辑器或任何其他编辑器,然后方便地移动代码/块并排! 在Linux中,使用grep和sed (find & replace)来查找/替换引用。 Grep -ir "oldname" CD文件夹 sed -i 's/oldName/newName/g' * .使用实例
推荐文章
- 如何用angular 2路由器重新加载当前路由
- 创建组件与Angular-CLI &将它添加到一个特定的模块
- @HostBinding和@HostListener:它们是做什么用的?
- 如何在TypeScript中实现睡眠函数?
- 在Angular 6中生成服务时,为din提供可注入装饰器的目的是什么?
- 如何在angular2中调用另一个组件函数
- Angular 2可选的路由参数
- 获取Angular中的当前url
- 如何下载Angular2或更高版本的文件
- 重命名Pandas DataFrame Index
- Angular2 @Input到一个get/set属性中
- 如何将“类”添加到主机元素?
- Angular 2选中双向数据绑定
- markForCheck()和detectChanges()的区别是什么
- 如何在angular 2 typescript应用程序中使用moment.js库?