Your MyComponentComponent
should be in MyComponentModule
.
And in MyComponentModule
, you should place the MyComponentComponent
inside the “exports”.
Something like this, see code below.
@NgModule({ imports: [], exports: [MyComponentComponent], declarations: [MyComponentComponent], providers: [], }) export class MyComponentModule { }
and place the MyComponentModule
in the imports
in app.module.ts
like this (see code below).
import { MyComponentModule } from 'your/file/path'; @NgModule({ imports: [MyComponentModule] declarations: [AppComponent], providers: [], bootstrap: [AppComponent] }) export class AppModule {}
After doing so, the selector of your component can now be recognized by the app.
You can learn more about it here: https://angular-2-training-book.rangle.io/handout/modules/feature-modules.html
Cheers!
Maybe This is for name of html
tag component
You use in html
something like this <mycomponent></mycomponent>
You must use this <app-mycomponent></app-mycomponent>
are you importing it in your app.module.ts
like so and remove the directives bit:-
@NgModule({ bootstrap: [AppComponent], imports: [MyComponentModule],// or whatever the name of the module is that declares your component. declarations: [AppComponent], providers: [] }) export class AppModule {}
Your MyComponentModule
should be like this:-
@NgModule({ imports: [], exports: [MyComponentComponent], declarations: [MyComponentComponent], providers: [], }) export class MyComponentModule { }