除了手动编辑所有组件文件(如文件夹名、.css、.ts、spec.ts和app.module.ts)之外,在Angular CLI中有没有什么重命名组件的快捷方式?
当前回答
No!
没有任何命令会更改使用组件create命令生成的所有文件的名称。创建ts html css/scss。spec。ts 文件需要手动重命名/编辑。
我经常使用angular cli,我认为这是一个很好的命令,因为有时我们只是创建angular组件,需要重命名它们。由于没有这个重命名命令,删除已创建的angular组件、指令等,然后再次运行命令来创建该组件真的很痛苦。
下面是添加该特性的讨论链接
其他回答
虽然OP请求CLI命令,但一些答案集中在ide上。在这个回答中,我只是确认,当前的WebStorm/IntelliJ允许重命名组件。所有需要做的就是尝试重命名.ts文件中的类。你会看到:
并且将在所有相关的地方进行重命名。
我个人还没有找到任何同样的命令。只需创建一个新组件(重命名名称)并复制粘贴前一个组件的html, css和ts。在ts中,显然类名将被替换。这是最安全的方法,但需要一点时间。
正如第一个答案所指出的,目前没有办法重命名组件,所以我们都只是在谈论变通办法! 这就是我所做的:
创建您喜欢的新组件。 生成组件newName 使用Visual studio代码编辑器或任何其他编辑器,然后方便地移动代码/块并排! 在Linux中,使用grep和sed (find & replace)来查找/替换引用。 Grep -ir "oldname" CD文件夹 sed -i 's/oldName/newName/g' * .使用实例
就像你通常认为的那样重命名文件和组件,然后重新启动ng serve。容易peasy。
重命名文件、路径和引用。关键是您必须关闭正在运行的服务器,并在重命名所有内容后重新启动它。
如果你使用VS Code,你可以重命名。ts, .html, .css/。scss .spec。ts文件和IDE将为您处理导入。因此,从组件中导入文件的文件(如app.module.ts)将不会产生任何抱怨。但是,您仍然必须在使用组件的任何地方重命名组件名称。
推荐文章
- 使用Java重命名文件
- 如何刷新一个数据源(mat-table)
- 如何在Angular中动态加载外部脚本?
- 可观察到的。的不是一个函数
- Angular 2模板中的let-*是什么?
- 在Angular2中,圆括号、方括号和星号有什么区别?
- 当组件属性依赖于当前日期时间时,如何管理Angular2“expression has changed after it was checked”异常
- 如何部署Angular应用?
- 如何在Angular 2中强制组件重新渲染?
- 如何在Angular 2.0中使用/创建动态模板来编译动态组件?
- 如何启用生产模式?
- 如何使用this.router.parent.navigate('/about')导航到另一个路由?
- Take (1) vs first()
- module是什么意思?Id在组件中?
- 如果'<selector>'是一个Angular组件,那么验证它是这个模块的一部分