L1ghtk3ira
L1ghtk3ira

Reputation: 3199

Angular Library Module generate a component from workspace

I have an Angular Workspace created with three projects. As well as I have just created a Library that I would like to have reusable modules inside.

Typically for the projects (applications and library) I run the following to generate a module or component:

ng g c component componentName --project=UserPortal

ng g c component componentName --project=myLibrary

However now I need to add components to the modules inside them:

For example the Library: projects myLibrary src lib navigation-module Add Component here

For Application Project Module: projects UserPortal src app userModule Add Component Here

I was able to create a module inside the Library project from the Workspace by running:

ng generate module navigation-module --project=myLibrary

Currently I have to go through command line down to that directory just to create a component. But I have a feeling I can do this from the Workspace like all the other commands. This would be most beneficial instead of either having to command lines up or going back and forth between directories.

Quick overview:

  1. Have a Library created within an Angular Workspace
  2. Created a module inside the Library within the Angular Workspace
  3. Want to create a component inside the module within the Library from the Workspace

Upvotes: 11

Views: 13947

Answers (2)

Ismail
Ismail

Reputation: 1316

You can pass your custom directory path along with ng command.

ng g c myfolder\mycomponent

But there are chances that you miss spell the path and either new folder gets created or target directory changes. For this reason dryRun is very helpful. It displays an output of how the changes is going to be affected.
enter image description here

After verifying the result you can run the same command without -d to make the changes.

--dryRun=true|false

When true, runs through and reports activity without writing out results.

Default: false

Aliases: -d

Official Doc :- https://angular.io/cli/generate

Upvotes: 0

Friedrich
Friedrich

Reputation: 1402

You can create components for feature modules by providing the correct path. In your case

ng g c navigation-module/test-component --project=myLibrary

should do the trick.

Upvotes: 21

Related Questions