Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I share an Angular 2 component between multiple Angular 2 projects?

Ideally, I'd like to create a stand-alone Angular 2 component (with tests) and then re-use it between two or three different Angular 2 sites. What are the good ways to achieve this? And a bonus question - do any 3rd party Angular 2 components exist?

like image 898
Sergey Aldoukhov Avatar asked Jan 29 '16 18:01

Sergey Aldoukhov


People also ask

How do you share Angular components between projects and apps?

To get started, go ahead and install bit-cli, then head over to the project from which to share the components, and initialize a bit workspace. Then, head over to bit. dev and create a free account. Then, create a collection to host your shared components.

Can I import one component into another Angular?

You can put commonly used directives, pipes, and components into one module and then import just that module wherever you need it in other parts of your application.

What is used to create component which can be shared across the entire application?

Explanation. Angular 2 Services are used to create components which can be shared across the entire application.


1 Answers

UPDATE

OFFICIAL Angular CLI https://angular.io/guide/creating-libraries

You can create an angular2 component library (with tests) and then use it in any number of projects

Then you can publish it on npm for public use. If you want to keep it private, you can read this https://docs.npmjs.com/creating-and-publishing-private-packages

Yes, many 3rd party angular2 components exist. Here are a few from valor-software https://github.com/valor-software/ng2-plans


If you don't want to publish your library and still use it, you can create a mono repo architecture. There is a tool by ex-googlers called nx https://nx.dev/. You can create a library using it and can use it in your project https://nx.dev/latest/angular/tutorial/08-create-libs


Yeoman Generator for angular library https://github.com/jvandemo/generator-angular2-library

like image 84
Vamsi Avatar answered Oct 07 '22 15:10

Vamsi