ng generate
Generates and/or modifies files based on a schematic.
ng generate <schematic> [options]
ng g <schematic> [options]
参数
参数 | 说明 |
---|---|
<schematic> | The schematic or collection:schematic to generate. 该选项可以接受下列子命令之一: |
选项
选项 | 说明 |
---|---|
--defaults=true|false | When true, disables interactive input prompts for options with a default. |
--dryRun=true|false | When true, runs through and reports activity without writing out results. 默认值: 别名: -d |
--force=true|false | When true, forces overwriting of existing files. 默认值: 别名: -f |
--help= | Shows a help message for this command in the console. 默认值: |
--interactive=true|false | When false, disables interactive input prompts. |
Schematic 命令
appShell
ng generate appShell [options]
ng g appShell [options]
Generates an app shell for running a server-side version of an app.
选项
选项 | 说明 |
---|---|
--appDir=appDir | The name of the application directory. 默认值: |
--appId=appId | The app ID to use in withServerTransition(). 默认值: |
--clientProject=clientProject | The name of the related client app. |
--index=index | Deprecated: This option has no effect. The name of the index file 默认值: |
--main=main | The name of the main entry-point file. 默认值: |
--name=name | Deprecated: This option has no effect. The HTML selector of the Universal app |
--outDir=outDir | Deprecated: This option has no effect. The output directory for build results. 默认值: |
--root=root | Deprecated: This option has no effect. The root directory of the app. 默认值: |
--rootModuleClassName= | The name of the root module class. 默认值: |
--rootModuleFileName= | The name of the root module file 默认值: |
--route=route | Route path used to produce the app shell. 默认值: |
--sourceDir=sourceDir | Deprecated: This option has no effect. The path of the source directory. 默认值: 别名: -D |
--test=test | Deprecated: This option has no effect. The name of the test entry-point file. |
--testTsconfigFileName= | Deprecated: This option has no effect. The name of the TypeScript configuration file for tests. 默认值: |
--tsconfigFileName= | The name of the TypeScript configuration file. 默认值: |
--universalProject= | Deprecated: This option has no effect. The name of related Universal app. |
application
ng generate application <name> [options]
ng g application <name> [options]
Generates a new basic app definition in the "projects" subfolder of the workspace.
参数
参数 | 说明 |
---|---|
<name> | The name of the new app. |
选项
选项 | 说明 |
---|---|
--inlineStyle=true|false | When true, includes styles inline in the root component.ts file. Only CSS styles can be included inline. Default is false, meaning that an external styles file is created and referenced in the root component.ts file. 默认值: 别名: -s |
--inlineTemplate=true|false | When true, includes template inline in the root component.ts file. Default is false, meaning that an external template file is created and referenced in the root component.ts file. 默认值: 别名: -t |
--lintFix=true|false | When true, applies lint fixes after generating the application. 默认值: |
--minimal=true|false | When true, creates a bare-bones project without any testing frameworks. (Use for learning purposes only.) 默认值: |
--prefix=prefix | A prefix to apply to generated selectors. 默认值: 别名: -p |
--routing=true|false | When true, creates a routing NgModule. 默认值: |
--skipInstall=true|false | Skip installing dependency packages. 默认值: |
--skipPackageJson=true|false | When true, does not add dependencies to the "package.json" file. 默认值: |
--skipTests=true|false | When true, does not create "spec.ts" test files for the app. 默认值: 别名: -S |
--style= | The file extension or preprocessor to use for style files. 默认值: |
--viewEncapsulation= | The view encapsulation strategy to use in the new app. |
class
ng generate class <name> [options]
ng g class <name> [options]
Creates a new generic class definition in the given or default project.
参数
参数 | 说明 |
---|---|
<name> | The name of the new class. |
选项
选项 | 说明 |
---|---|
--lintFix=true|false | When true, applies lint fixes after generating the class. 默认值: |
--project=project | The name of the project. |
--skipTests=true|false | When true, does not create "spec.ts" test files for the new class. 默认值: |
--type=type | Adds a developer-defined type to the filename, in the format "name.type.ts". 默认值: |
component
ng generate component <name> [options]
ng g component <name> [options]
Creates a new generic component definition in the given or default project.
参数
参数 | 说明 |
---|---|
<name> | The name of the component. |
选项
选项 | 说明 |
---|---|
--changeDetection=Default|OnPush | The change detection strategy to use in the new component. 默认值: 别名: -c |
--entryComponent=true|false | Deprecated: Since version 9.0.0 with Ivy, entryComponents is no longer necessary. When true, the new component is the entry component of the declaring NgModule. 默认值: |
--export=true|false | When true, the declaring NgModule exports this component. 默认值: |
--flat=true|false | When true, creates the new files at the top level of the current project. 默认值: |
--inlineStyle=true|false | When true, includes styles inline in the component.ts file. Only CSS styles can be included inline. By default, an external styles file is created and referenced in the component.ts file. 默认值: 别名: -s |
--inlineTemplate=true|false | When true, includes template inline in the component.ts file. By default, an external template file is created and referenced in the component.ts file. 默认值: 别名: -t |
--lintFix=true|false | When true, applies lint fixes after generating the component. 默认值: |
--module=module | The declaring NgModule. 别名: -m |
--prefix=prefix | The prefix to apply to the generated component selector. 别名: -p |
--project=project | The name of the project. |
--selector=selector | The HTML selector to use for this component. |
--skipImport=true|false | When true, does not import this component into the owning NgModule. 默认值: |
--skipSelector=true|false | Specifies if the component should have a selector or not. 默认值: |
--skipTests=true|false | When true, does not create "spec.ts" test files for the new component. 默认值: |
--style= | The file extension or preprocessor to use for style files. 默认值: |
--type=type | Adds a developer-defined type to the filename, in the format "name.type.ts". 默认值: |
--viewEncapsulation= | The view encapsulation strategy to use in the new component. 别名: -v |
directive
ng generate directive <name> [options]
ng g directive <name> [options]
Creates a new generic directive definition in the given or default project.
参数
参数 | 说明 |
---|---|
<name> | The name of the new directive. |
选项
选项 | 说明 |
---|---|
--export=true|false | When true, the declaring NgModule exports this directive. 默认值: |
--flat=true|false | When true (the default), creates the new files at the top level of the current project. 默认值: |
--lintFix=true|false | When true, applies lint fixes after generating the directive. 默认值: |
--module=module | The declaring NgModule. 别名: -m |
--prefix=prefix | A prefix to apply to generated selectors. 别名: -p |
--project=project | The name of the project. |
--selector=selector | The HTML selector to use for this directive. |
--skipImport=true|false | When true, does not import this directive into the owning NgModule. 默认值: |
--skipTests=true|false | When true, does not create "spec.ts" test files for the new class. 默认值: |
enum
ng generate enum <name> [options]
ng g enum <name> [options]
Generates a new, generic enum definition for the given or default project.
参数
参数 | 说明 |
---|---|
<name> | The name of the enum. |
选项
选项 | 说明 |
---|---|
--lintFix=true|false | When true, applies lint fixes after generating the enum. 默认值: |
--project=project | The name of the project in which to create the enum. Default is the configured default project for the workspace. |
guard
ng generate guard <name> [options]
ng g guard <name> [options]
Generates a new, generic route guard definition in the given or default project.
参数
参数 | 说明 |
---|---|
<name> | The name of the new route guard. |
选项
选项 | 说明 |
---|---|
--flat=true|false | When true (the default), creates the new files at the top level of the current project. 默认值: |
--implements | Specifies which interfaces to implement. |
--lintFix=true|false | When true, applies lint fixes after generating the guard. 默认值: |
--project=project | The name of the project. |
--skipTests=true|false | When true, does not create "spec.ts" test files for the new guard. 默认值: |
--spec=true|false | Deprecated: Use "skipTests" instead. When true (the default), generates a "spec.ts" test file for the new guard. 默认值: |
interceptor
ng generate interceptor <name> [options]
ng g interceptor <name> [options]
Creates a new, generic interceptor definition in the given or default project.
参数
参数 | 说明 |
---|---|
<name> | The name of the interceptor. |
选项
选项 | 说明 |
---|---|
--flat=true|false | When true (the default), creates files at the top level of the project. 默认值: |
--lintFix=true|false | When true, applies lint fixes after generating the interceptor. 默认值: |
--project=project | The name of the project. |
--skipTests=true|false | When true, does not create "spec.ts" test files for the new interceptor. 默认值: |
interface
ng generate interface <name> <type> [options]
ng g interface <name> <type> [options]
Creates a new generic interface definition in the given or default project.
参数
参数 | 说明 |
---|---|
<name> | The name of the interface. |
<type> | Adds a developer-defined type to the filename, in the format "name.type.ts". |
选项
选项 | 说明 |
---|---|
--lintFix=true|false | When true, applies lint fixes after generating the interface. 默认值: |
--prefix=prefix | A prefix to apply to generated selectors. 默认值: |
--project=project | The name of the project. |
library
ng generate library <name> [options]
ng g library <name> [options]
Creates a new generic library project in the current workspace.
参数
参数 | 说明 |
---|---|
<name> | The name of the library. |
选项
选项 | 说明 |
---|---|
--entryFile=entryFile | The path at which to create the library's public API file, relative to the workspace root. 默认值: |
--lintFix=true|false | When true, applies lint fixes after generating the library. 默认值: |
--prefix=prefix | A prefix to apply to generated selectors. 默认值: 别名: -p |
--skipInstall=true|false | When true, does not install dependency packages. 默认值: |
--skipPackageJson=true|false | When true, does not add dependencies to the "package.json" file. 默认值: |
--skipTsConfig=true|false | When true, does not update "tsconfig.json" to add a path mapping for the new library. The path mapping is needed to use the library in an app, but can be disabled here to simplify development. 默认值: |
module
ng generate module <name> [options]
ng g module <name> [options]
Creates a new generic NgModule definition in the given or default project.
参数
参数 | 说明 |
---|---|
<name> | The name of the NgModule. |
选项
选项 | 说明 |
---|---|
--flat=true|false | When true, creates the new files at the top level of the current project root. 默认值: |
--lintFix=true|false | When true, applies lint fixes after generating the module. 默认值: |
--module=module | The declaring NgModule. 别名: -m |
--project=project | The name of the project. |
--route=route | The route path for a lazy-loaded module. When supplied, creates a component in the new module, and adds the route to that component in the |
--routing=true|false | When true, creates a routing module. 默认值: |
--routingScope=Child|Root | The scope for the new routing module. 默认值: |
pipe
ng generate pipe <name> [options]
ng g pipe <name> [options]
Creates a new generic pipe definition in the given or default project.
参数
参数 | 说明 |
---|---|
<name> | The name of the pipe. |
选项
选项 | 说明 |
---|---|
--export=true|false | When true, the declaring NgModule exports this pipe. 默认值: |
--flat=true|false | When true (the default) creates files at the top level of the project. 默认值: |
--lintFix=true|false | When true, applies lint fixes after generating the pipe. 默认值: |
--module=module | The declaring NgModule. 别名: -m |
--project=project | The name of the project. |
--skipImport=true|false | When true, does not import this pipe into the owning NgModule. 默认值: |
--skipTests=true|false | When true, does not create "spec.ts" test files for the new pipe. 默认值: |
service
ng generate service <name> [options]
ng g service <name> [options]
Creates a new, generic service definition in the given or default project.
参数
参数 | 说明 |
---|---|
<name> | The name of the service. |
选项
选项 | 说明 |
---|---|
--flat=true|false | When true (the default), creates files at the top level of the project. 默认值: |
--lintFix=true|false | When true, applies lint fixes after generating the service. 默认值: |
--project=project | The name of the project. |
--skipTests=true|false | When true, does not create "spec.ts" test files for the new service. 默认值: |
serviceWorker
ng generate serviceWorker [options]
ng g serviceWorker [options]
Pass this schematic to the "run" command to create a service worker
选项
选项 | 说明 |
---|---|
--configuration=configuration | The configuration to apply service worker to. 默认值: |
--project=project | The name of the project. |
--target=target | The target to apply service worker to. 默认值: |
webWorker
ng generate webWorker <name> [options]
ng g webWorker <name> [options]
Creates a new generic web worker definition in the given or default project.
参数
参数 | 说明 |
---|---|
<name> | The name of the worker. |
选项
选项 | 说明 |
---|---|
--project=project | The name of the project. |
--snippet=true|false | Add a worker creation snippet in a sibling file of the same name. 默认值: |
--target=target | The target to apply web worker to. 默认值: |