Angular 离子3角5-罐';t解析“的所有参数”;第页“;
出现错误“无法解析主页的所有参数:([object],?,[object object],[object object])”。我正试图通过angularfire访问我的数据库,用户登录时会在toastcontroller messeges上发送电子邮件。函数名:“IonViewWillLoad()” 所有项目: 这是我的主页:Angular 离子3角5-罐';t解析“的所有参数”;第页“;,angular,typescript,ionic-framework,angular5,Angular,Typescript,Ionic Framework,Angular5,出现错误“无法解析主页的所有参数:([object],?,[object object],[object object])”。我正试图通过angularfire访问我的数据库,用户登录时会在toastcontroller messeges上发送电子邮件。函数名:“IonViewWillLoad()” 所有项目: 这是我的主页: import { Component } from '@angular/core'; import { NavController, ModalController }
import { Component } from '@angular/core';
import { NavController, ModalController } from 'ionic-angular';
import { DetailPage } from '../detail/detail';
import { ToastController } from 'toast-controller';
import { AngularFireAuth } from "angularfire2/auth";
import { User } from '../../app/modals/user';
@Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
//public shouldReorder = false;
user = {} as User;
constructor(private aFAuth: AngularFireAuth,
private toastCtrl = ToastController,
public navCtrl: NavController,
public modalCtrl: ModalController)
{
//this.service.getPeople().subscribe( data => {
// this.people = data.results
// });
}
ionViewWillLoad(){
this.aFAuth.authState.subscribe(data => {
if(data.email && data.uid) {
let toast = this.toastCtrl.create({
message: 'User was added successfully',
duration: 3000,
position: 'top'
});
toast.onDidDismiss(() => {
console.log('Dismissed toast');
});
toast.present();
}
else {
let toast = this.toastCtrl.create({
message: 'User not found',
duration: 3000,
position: 'top'
});
toast.present();
}
});
}
}
我不明白那是什么错误,也许有人能告诉我?IDE中不再有错误,只有浏览器中的错误(ionic serve)。
App.module.ts:
import { BrowserModule } from '@angular/platform-browser';
import { HttpClient, HttpClientModule } from "@angular/common/http";
import { ErrorHandler, NgModule } from '@angular/core';
import { IonicApp, IonicErrorHandler, IonicModule } from 'ionic-angular';
import { SplashScreen } from '@ionic-native/splash-screen';
import { StatusBar } from '@ionic-native/status-bar';
import { MyApp } from './app.component';
import { HomePage } from '../pages/home/home';
import { DetailPage } from '../pages/detail/detail';
import { StartPage } from '../pages/start/start';
import { AngularFireModule } from "angularfire2";
import { FIREBASE_CONFIG } from "./app.firebase.config";
import { LoginPage } from "../pages/login/login";
import { AngularFireAuthModule } from "angularfire2/auth";
@NgModule({
declarations: [
MyApp,
StartPage,
HomePage,
DetailPage,
LoginPage,
],
imports: [
BrowserModule,
HttpClientModule,
IonicModule.forRoot(MyApp),
AngularFireModule.initializeApp(FIREBASE_CONFIG),
AngularFireAuthModule
],
bootstrap: [IonicApp],
entryComponents: [
MyApp,
StartPage,
HomePage,
DetailPage,
LoginPage,
],
providers: [
HttpClient,
StatusBar,
SplashScreen,
{provide: ErrorHandler, useClass: IonicErrorHandler},
]
})
export class AppModule {}
export interface User {
email: string;
password: string;
}
User.ts:
import { BrowserModule } from '@angular/platform-browser';
import { HttpClient, HttpClientModule } from "@angular/common/http";
import { ErrorHandler, NgModule } from '@angular/core';
import { IonicApp, IonicErrorHandler, IonicModule } from 'ionic-angular';
import { SplashScreen } from '@ionic-native/splash-screen';
import { StatusBar } from '@ionic-native/status-bar';
import { MyApp } from './app.component';
import { HomePage } from '../pages/home/home';
import { DetailPage } from '../pages/detail/detail';
import { StartPage } from '../pages/start/start';
import { AngularFireModule } from "angularfire2";
import { FIREBASE_CONFIG } from "./app.firebase.config";
import { LoginPage } from "../pages/login/login";
import { AngularFireAuthModule } from "angularfire2/auth";
@NgModule({
declarations: [
MyApp,
StartPage,
HomePage,
DetailPage,
LoginPage,
],
imports: [
BrowserModule,
HttpClientModule,
IonicModule.forRoot(MyApp),
AngularFireModule.initializeApp(FIREBASE_CONFIG),
AngularFireAuthModule
],
bootstrap: [IonicApp],
entryComponents: [
MyApp,
StartPage,
HomePage,
DetailPage,
LoginPage,
],
providers: [
HttpClient,
StatusBar,
SplashScreen,
{provide: ErrorHandler, useClass: IonicErrorHandler},
]
})
export class AppModule {}
export interface User {
email: string;
password: string;
}
编辑:
当我从我的构造函数中删除-public navCtrl:NavController时(它没有被使用,错误变小了,但有点不同=?):
无法解析主页的所有参数:([对象对象],?,[对象对象])您正在分配
toastCtrl=ToastController
,而它应该是私有toastCtrl:toastcroller
改变
来自
constructor(private aFAuth: AngularFireAuth,
private toastCtrl = ToastController,
至
constructor(private aFAuth: AngularFireAuth,
private toastCtrl : ToastController,
错误是因为angular无法访问
主页所需的所有参数。在构造函数中,您声明了四个参数:angular无法访问所有内容,除了ToastController
。这就是错误消息中的参数是问号的原因
您必须正确地从导入toast-controller
,现在您正从'toast-controller'
导入它,除非您在该位置有东西需要删除该行
import { ToastController } from 'toast-controller';
然后从ionic angular库正确导入ToastController。如下所示(更改代码的第二行)
你能将你的app.module.t添加到post app.module.ts和user.ts中吗?请同时发布主页。事情是我用那种方式做的,我的函数中的单词.create有错误“属性'create'在'typeof ToastController'中不存在,然后我更改为显示的内容。但现在当我再次写下这句话时,它起了作用。。有些奇怪的事,谢谢。