@nx/angular:library
Creates an Angular library.
Monorepo World: October 7, 2024Monorepo World: October 7, 2024Join us!
Creates an Angular library.
Creates the my-ui-lib
library with an ui
tag:
1nx g @nx/angular:library libs/my-ui-lib --tags=ui
2
1nx generate library ...
2
1nx g lib ... #same
2
By default, Nx will search for library
in the default collection provisioned in workspace.json.
You can specify the collection explicitly as follows:
1nx g @nx/angular:library ...
2
Show what will be generated without writing to disk:
1nx g library ... --dry-run
2
A directory where the library is placed.
false
Generate a buildable library.
false
Add RouterModule.forChild
when set to true, and a simple array of routes when set to false.
The name of the library.
false
Generate a publishable library.
Path to the parent route configuration using loadChildren
or children
, depending on what lazy
is set to.
false
Add router configuration. See lazy
for more information.
false
Add a module spec file.
false
Whether to configure Tailwind CSS for the application. It can only be used with buildable and publishable libraries. Non-buildable libraries will use the application's Tailwind configuration.
full
, partial
Specifies the compilation mode to use. If not specified, it will default to partial
for publishable libraries and to full
for buildable libraries. The full
value can not be used for publishable libraries.
Default
Default
, OnPush
The change detection strategy to use in the new component. Disclaimer: This option is only valid when --standalone
is set to true
.
false
Specifies if the component generated style will contain :host { display: block; }
. Disclaimer: This option is only valid when --standalone
is set to true
.
false
Ensure the generated standalone component is not placed in a subdirectory. Disclaimer: This option is only valid when --standalone
is set to true
.
The library name used to import it, like @myorg/my-awesome-lib
. Must be a valid npm name.
false
Include 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. Disclaimer: This option is only valid when --standalone
is set to true
.
false
Include template inline in the component.ts file. By default, an external template file is created and referenced in the component.ts file. Disclaimer: This option is only valid when --standalone
is set to true
.
eslint
eslint
, none
The tool to use for running lint checks.
html-selector
The prefix to apply to generated selectors.
false
Don't include the directory in the name of the module or standalone component entry of the library.
false
Do not update tsconfig.json
for development experience.
true
Create a library with stricter type checking and build optimization options.
false
Whether or not to configure the ESLint parserOptions.project
option. We do not do this by default for lint performance reasons.
false
Whether to skip the creation of a default module when generating the library.
true
Generate a library that uses a standalone component instead of a module as the entry point.
css
css
, scss
, sass
, less
, none
The file extension or preprocessor to use for style files, or none
to skip generating the style file. Disclaimer: This option is only valid when --standalone
is set to true
.
false
Do not create spec.ts
test files for the new component. Disclaimer: This option is only valid when --standalone
is set to true
.
html-selector
The HTML selector to use for this component. Disclaimer: This option is only valid when --standalone
is set to true
.
false
Specifies if the component should have a selector or not. Disclaimer: This option is only valid when --standalone
is set to true
.
Add tags to the library (used for linting).
jest
jest
, none
Test runner to use for unit tests.
Emulated
, None
, ShadowDom
The view encapsulation strategy to use in the new component. Disclaimer: This option is only valid when --standalone
is set to true
.
false
Skip formatting files.
false
Do not add dependencies to package.json
.
true
Split the project configuration into <projectRoot>/project.json
rather than including it inside workspace.json
.
Nx only supports standaloneConfig
Join us live for exciting talks on developer tooling and monorepos! Catch the action on YouTube and join the conversation on Discord!