javascript - Hvordan inkludere Angular Material i Angular 17?
Angular Materials dokumentasjon sier:
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
@NgModule ({
imports: [
MatSlideToggleModule,
]
})
class AppModule {}
Men Angular 17 lager ikke app.module-fil som standard. Finnes det en måte å gjøre det på uten app.module?
Svar #1
importer avhengigheter inn i komponenten i stedet for app.modules, legg til attributtet standalone:true, som koden nedenfor:
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
@Component({
standalone:true,
imports: [
MatSlideToggleModule,
],
selector: 'your-component',
templateUrl: './your.component.html',
styleUrls: ['./your.component.scss']
})
Svar #2
Fra og med Angular v17 er standalone standard via CLI
Som betyr at når du oppretter et nytt prosjekt, vil det ikke ha noen moduler i seg
Som en løsning er det mulig å lage en modulbasert app ved å bruke --no-standalone-flagget: ng new --no-standalone, som vil lage en app.modules.ts i prosjektet ditt
bruk denne kommandoen :
ng new myNewApp --no-standalone
Følg det opp med :
ng add @angular/material
Importer deretter relevante moduler fra Angular Material til prosjektets app.module.ts:
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
@NgModule ({
imports: [
MatSlideToggleModule,
]
})
class AppModule {}
