angular - PrimeNG: 'p-table' er ikke et kjent element
Jeg jobber med en Angular 6-applikasjon og jeg trenger å lage en vippbar tabell med PrimeNG 7.0.5, men jeg fikk dette problemet da jeg prøvde å bruke <p-table>:
'p-table' er ikke et kjent element
Samme problem når jeg vil bruke parametere som 'value' i < p-table >.
Jeg bruker dokumentasjonen til TurboTable her.
Jeg har importert TableModule i min app.module.ts.
app.modul.ts
import { CommonModule, registerLocaleData } from '@angular/common';
import { HttpClient, HttpClientModule } from '@angular/common/http';
import { HttpModule } from '@angular/http';
import { NgModule, Pipe, PipeTransform, LOCALE_ID } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
import { TranslateHttpLoader } from '@ngx-translate/http-loader';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { AuthGuard } from './shared';
import { FormsModule } from '@angular/forms';
import { MessageComponent } from './message/message.component';
import { MessageService } from './message/message.service';
// imported it here
import { TableModule } from 'primeng/table';
import localeFr from '@angular/common/locales/fr';
registerLocaleData(localeFr);
export const createTranslateLoader = (http: HttpClient) => {
return new TranslateHttpLoader(http, './assets/i18n/', '.json');
};
@NgModule({
imports: [
CommonModule,
BrowserModule,
BrowserAnimationsModule,
HttpClientModule,
FormsModule,
HttpModule,
TableModule, /* <-- added this */
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: createTranslateLoader,
deps: [HttpClient]
}
}),
AppRoutingModule
],
declarations: [AppComponent, MessageComponent],
providers: [AuthGuard, MessageService, { provide: LOCALE_ID, useValue: 'fr-FR' }],
bootstrap: [AppComponent]
})
export class AppModule { }
For HTML-en har jeg nettopp testet koden med dette:
<p-table></p-table>
Jeg fant ingenting om denne saken på nettet og i denne versjonen... Har noen noen gang hatt dette problemet?
Svar #1
importer { TableModule } i modulen der komponenten bruker det
Svar #2
Først, vennligst sørg for at du genererer Angular og installerer PrimeNG i en kompatibel versjon. Jeg hadde også det samme problemet før jeg oppdaterte Node.js. Min Node-versjon er nå V12.16.2, og når jeg installerer PrimeNG får jeg en kompatibel versjon. Så en del av min package.json er som følger:
"@angular/common": "9.0.4",
"@angular/compiler": "9.0.4",
"@angular/core": "9.0.4",
Og den installerte primeNG-versjonen er som følger:
"primeicons": "^2.0.0",
"primeng": "^9.0.5",
Da bør importering av modulen være i den nærmeste modulen til html-filen.
import { TableModule } from 'primeng/table';
Håper det hjelper.
