我正在使用Angular 4和Angular CLI,我可以用下面的命令创建一个新组件。

E:\HiddenWords>ng generate component plainsight

但我需要在plainsight内生成一个子组件。有办法用Angular CLI来实现吗?


当前回答

超级简单,

其他方式,

在终端打开文件夹,

* * xxx \ FOLDER_NAME > FOLDER_NAME cd

生成组件平台的 xxx\FOLDER_NAME>

如果你像我一样复制路径(Visual studio代码),

其他回答

如果你使用VSCode,可以考虑使用Angular控制台

它为Angular CLI提供了一个接口。您将看到一个用于指定路径的选项。

Angular CLI是非常强大和可扩展的。事实上,有如此多的功能,对于开发人员来说,为每个命令提供所有不同的配置选项是很有帮助的。 有了Angular Console,你会得到推荐,甚至可以找到最容易忘记或很少使用的特性! 首先,Angular Console是一种更高效地使用Angular CLI提供的功能的方式。

假设你想在一个模块Box中创建一个组件Container,模块已经创建好了,并且存在于它自己的文件夹src/app/ Box中。

您可以这样做——当被要求提供组件名称时,提供组件的路径和组件名称。

ng g c -m box
? What name would you like to use for the component? box/Container
CREATE src/app/box/container/container.component.scss (0 bytes)
CREATE src/app/box/container/container.component.html (24 bytes)
CREATE src/app/box/container/container.component.spec.ts (647 bytes)
CREATE src/app/box/container/container.component.ts (288 bytes)
UPDATE src/app/box/box.module.ts (286 bytes)

超级简单,

其他方式,

在终端打开文件夹,

* * xxx \ FOLDER_NAME > FOLDER_NAME cd

生成组件平台的 xxx\FOLDER_NAME>

如果你像我一样复制路径(Visual studio代码),

ng g组件plainsight/some-name在我们使用它时创建了一个新目录。

最终输出将是:

plainsight/some-name/some-name.component.ts

为了避免这种情况,使用平面选项ng g component plainsight/some-name——flat,它将生成文件而不创建新文件夹

plainsight/some-name.component.ts

更短的代码来生成组件:ng g c component-name 指定它的位置:ng g c specific-folder/component-name

额外的信息 更短的代码生成指令:ng g d directive-name 指定它的位置:ng g d specific-folder/directive-name