首页 > 解决方案 > Angular 2 CLI 在现有目录树中插入组件(向下移动其他组件)

问题描述

TL:DR - 有没有办法在现有组件之上添加一个组件:意思是在现有组件的文件路径中,而不是在它旁边?

假设我有一个具有以下简单树结构的 Angular 项目:

app/parent/child1
app/parent/child2

但是现在随着我的项目的增长,我看到我想在现有目录上方添加另一个组件(创建另一个分支)

app/parent/i_am_OLD_here/child1
app/parent/i_am_OLD_here/child2
app/parent/i_am_NEW_here/child3
app/parent/i_am_NEW_here/child4

如果我在目录中app/parent并且我这样做: ng g component i_am_NEW_here我将粗略地得到:

app/parent/child1
app/parent/child2
app/parent/i_am_NEW_here

这意味着我必须在目录中创建child1和然后将旧组件和 child2` 组件中的所有数据复制到新组件中并更改组件和模块组件中的所有导入(如果你有这仍然很好只有两个组件,但是如果您还有更多组件怎么办)?child2app/parent/i_am_new_herechild1

我在CLI 文档中没有看到类似的内容,并且已经多次遇到此问题。显然,答案之一可以是更好地规划我的项目,但我怎么知道我(或客户)在 3 个月后可能想要哪些功能?

标签: angularangular2-components

解决方案


使用 Angular CLI,可以指定一个子文件夹前缀来生成您的组件。

例如:

ng g component <any_nested_path>/i_am_NEW_here --dry-run

将其作为试运行运行,它将向您显示any_nested_path目录中正在创建的资源。移除 dry-run 标志以实际创建组件。


推荐阅读