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

E:\HiddenWords>ng generate component plainsight

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


当前回答

要在VS code中打开终端,只需输入CTRL + ~,这将打开终端。以下是步骤:

检查需要在其中生成新组件的特定组件。 将路径重定向到需要生成另一个组件的特定文件夹/组件

例如:cd src/app/ specialarcomponent

在specialcomponent的位置,键入需要生成新组件的组件名称。

一旦进入需要生成新组件的组件,只需键入以下命令:ng g c NewComponentName

(将NewComponentName更改为所需的组件名称。)

其他回答

我在上面的答案上没有任何运气(包括-平坦),但对我来说有用的是:

cd path/to/specific/directory

从那里,我运行ng g c mynewcomponent

要在VS code中打开终端,只需输入CTRL + ~,这将打开终端。以下是步骤:

检查需要在其中生成新组件的特定组件。 将路径重定向到需要生成另一个组件的特定文件夹/组件

例如:cd src/app/ specialarcomponent

在specialcomponent的位置,键入需要生成新组件的组件名称。

一旦进入需要生成新组件的组件,只需键入以下命令:ng g c NewComponentName

(将NewComponentName更改为所需的组件名称。)

2021进一步加快IDE插件的使用

如果你想进一步加快这个通常的过程,并避免花费你时间的常见错误,你可以尝试使用visual studio代码插件。

例如,我使用Angular-Schematics,我避免使用终端。你可以用鼠标选择调用ng cli。

上面的选项不适合我,因为与在终端中创建目录或文件不同,当CLI生成一个组件时,它默认将路径src/app添加到您输入的路径中。

如果我从主应用文件夹中生成组件像这样(错误的方式)

ng g c ./src/app/child/grandchild 

生成的组件是这样的:

src/app/src/app/child/grandchild.component.ts

所以我只需要打字

ng g c child/grandchild 

希望这对大家有所帮助

Angular CLI提供了应用开发中需要的所有命令。对于您的特定需求,您可以轻松地使用ng g (ng generate)完成工作。

Ng c目录/component-name将在目录文件夹中生成component-name组件。

下面是您可以在应用程序中使用的一些简单命令的映射。

Ng g c comp-name或Ng generate component comp-name来创建一个名为'comp-name'的组件 Ng g s serv-name或Ng generate service serv-name来创建一个名为'serv-name'的服务 Ng g m mod-name或Ng generate module mod-name来创建一个名为'mod-name'的模块 Ng g m mod-name——routing或Ng generate module mod-name——routing来创建一个名为'mod-name'的模块,用于angular路由

希望这能有所帮助!

好运!