Angular 我的申请没有';我似乎没有拿起我的角材料/对话框模块。我如何修复此问题以使其正常工作?
我想为我的角度应用程序使用两个材质ui组件。 它们是Angular 我的申请没有';我似乎没有拿起我的角材料/对话框模块。我如何修复此问题以使其正常工作?,angular,typescript,angular-material,node-modules,tsc,Angular,Typescript,Angular Material,Node Modules,Tsc,我想为我的角度应用程序使用两个材质ui组件。 它们是MatDialog,和MatDialogConfig。我不确定我是否有什么东西放错了地方,但基本上我所有的模块都可以正常工作,除了这个。我的app.module.ts文件和我的组件course dialog.component文件都有带有MatDialog和MatDialogConfig的导入语句,只是在运行程序时找不到模块。它们列在下面。如何让编译器加载这些模块? app.module.ts import { NgModule, Error
MatDialog
,和MatDialogConfig
。我不确定我是否有什么东西放错了地方,但基本上我所有的模块都可以正常工作,除了这个。我的app.module.ts
文件和我的组件course dialog.component
文件都有带有MatDialog
和MatDialogConfig
的导入语句,只是在运行程序时找不到模块。它们列在下面。如何让编译器加载这些模块?
app.module.ts
import { NgModule, ErrorHandler } from '@angular/core';
import { registerLocaleData } from '@angular/common';
import { HttpClientModule } from '@angular/common/http';
import { BrowserModule } from '@angular/platform-browser';
import { RouteReuseStrategy } from '@angular/router';
import {MatDialog, MatDialogConfig} from '@angular/material/dialog';
import { IonicModule, IonicRouteStrategy } from '@ionic/angular';
import { SplashScreen } from '@ionic-native/splash-screen/ngx';
import { StatusBar } from '@ionic-native/status-bar/ngx';
import { GooglePlus } from '@ionic-native/google-plus/ngx';
import { Facebook } from '@ionic-native/facebook/ngx';
import { StripeModule } from "stripe-angular"
import { AppComponent } from './app.component';
import { AppRoutingModule } from './app-routing.module';
import { AngularFireModule } from '@angular/fire';
import {AngularFireAuthModule} from '@angular/fire/auth';
import {AngularFirestoreModule} from '@angular/fire/firestore';
import {AngularFireStorageModule} from '@angular/fire/storage';
import { AngularFireDatabaseModule } from '@angular/fire/database';
/*Services*/
import { AuthService } from '@services/auth.service';
import { CallService } from '@services/call.service';
import { DataProvider } from '@services/data/base.data-provider';
import { LocalDataProvider } from '@services/data/local.data-
provider';
import { FirebaseDataProvider } from '@services/data/firebase.data-
provider';
import { RemoteDataProvider } from '@services/data/remote.data-
provider';
import { BackendlessDataProvider } from
'@services/data/backendless.data-provider';
import { EmailService } from '@services/email.service';
import { FacebookApiService } from '@services/facebook-api.service';
import { InAppBrowserService } from '@services/in-app-
browser.service';
import { MapsService } from '@services/maps.service';
import { OpenHoursService } from '@services/open-hours.service';
import { FavoritesService } from '@services/favorites.service';
import { Calendar } from '@ionic-native/calendar/ngx';
import { EmailComposer } from '@ionic-native/email-composer/ngx';
import localeDe from '@angular/common/locales/de';
import { Config } from '../config';
import { NgxWebstorageModule } from 'ngx-webstorage';
registerLocaleData(localeDe, 'de');
import { ComponentsModule } from
'./pages/components/components.module';
import { OneSignalModule } from './pages/push/one-signal.module';
import { AgmCoreModule } from '@agm/core';
import { ServiceWorkerModule } from '@angular/service-worker';
import { environment } from '../environments/environment';
@NgModule({
declarations: [AppComponent],
entryComponents: [],
imports: [
MatDialog,
MatDialogConfig,
HttpClientModule,
BrowserModule,
ComponentsModule,
IonicModule.forRoot(),
CartServiceModule.forRoot(),
AppRoutingModule,
AgmCoreModule.forRoot({
apiKey: Config.mapsApiKey
}),
NgxWebstorageModule.forRoot(),
AngularFireModule.initializeApp(Config.firebase),
AngularFireAuthModule,
AngularFirestoreModule,
AngularFireDatabaseModule,
environment.production })
],
providers: [
Config,
AuthGuard,
// { provide: ErrorHandler, useClass: IonicErrorHandler },
StatusBar,
{ provide: DataProvider, useClass: LocalDataProvider },
// { provide: DataProvider, useClass: FirebaseDataProvider },
// { provide: DataProvider, useClass: RemoteDataProvider },
// { provide: DataProvider, useClass: BackendlessDataProvider },
EmailService,
CallService,
InAppBrowserService,
MapsService,
OpenHoursService,
FavoritesService,
AuthService,
Calendar,
FacebookApiService,
StatusBar,
OneSignalModule,
SplashScreen,
AuthResolver,
{ provide: RouteReuseStrategy, useClass: IonicRouteStrategy },
EmailComposer,
GooglePlus,
Facebook
],
bootstrap: [AppComponent]
})
导出类AppModule{}
课程-list.component.ts
import { AgmCoreModule } from '@agm/core';
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { IonicModule } from '@ionic/angular';
import { CustomComponentsModule } from '@components/custom-
components.module';
import { DynamicFormModule } from '@components/forms/dynamic-
form.module';
import { PipesModule } from '@pipes/pipes.module';
import { RouterModule, Routes } from '@angular/router';
import { CoursesCardListPage } from './courses-card-list.page';
import {MatDialog, MatDialogConfig} from '@angular/material/dialog';
const routes: Routes = [
{
path: '',
component: CoursesCardListPage
}
];
@NgModule({
imports: [MatDialog,MatDialogConfig,IonicModule, CommonModule,
PipesModule, CustomComponentsModule, RouterModule.forChild(routes)],
declarations: [CoursesCardListPage],
entryComponents: [CoursesCardListPage]
})
export class CoursesCardListModule { }
在您的模块中,您需要导入
MatDialogModule
,如下所示:
从'@angular/material/dialog'导入{MatDialogModule};
文件中的导入将在组件中使用
因此,在您的模块中,您应该具有以下导入:
@NgModule({
declarations: [AppComponent],
entryComponents: [],
imports: [
// here is the correct import
MatDialogModule, // instead of MatDialog and MatDialogConfig
HttpClientModule,
BrowserModule,
ComponentsModule,
....
MatDialog
和MatDialogConfig
应该导入到组件中,而不是模块中。不是这样。我的错误是它没有找到模块,引用没有定义。我再次检查了你的代码。我在你的模块中没有看到我在回答中提到的正确导入。我可能累了,但我很确定我看不见。您得到该错误是因为您没有正确导入。您可以导入MatDialog而不是MatDialogModule。我将在我的答案中添加一个小的更新。哪个导入,在coure-list.component或app.module中?我不认为mat dialog文档中说要将模块放在matdialog的末尾。我试着把它放进去,但没用。这很奇怪。@evan在app.module或任何其他模块中,您计划在哪里使用MatDialog。这是文档。我不确定我建议您将matdialog末尾的模块放在哪里?!!(不管是什么)。只要按照我在AppModule和MatDialogModule(以及您可能使用该对话框的任何其他模块)的答案中所写的那样进行正确的导入,它就会工作。