Typescript 财产';装载';不存在于类型';SignupPage';(打字稿)

Typescript 财产';装载';不存在于类型';SignupPage';(打字稿),typescript,types,properties,mean-stack,Typescript,Types,Properties,Mean Stack,你好,stackoverflow的好朋友们 我对“堆叠”这个词还不熟悉,但我仍在努力了解它的基本知识 我想做一个简单的身份验证。代码如下: import { Component } from '@angular/core'; import { NavController, LoadingController } from 'ionic-angular'; import { Auth } from '../../providers/auth'; import { HomePage } from '

你好,stackoverflow的好朋友们

我对“堆叠”这个词还不熟悉,但我仍在努力了解它的基本知识

我想做一个简单的身份验证。代码如下:

import { Component } from '@angular/core';
import { NavController, LoadingController } from 'ionic-angular';
import { Auth } from '../../providers/auth';
import { HomePage } from '../home/home';

@Component({
  selector: 'signup-page',
  templateUrl: 'signup-page.html'
})
export class SignupPage {

  role: string;
  email: string;
  password: string;

  constructor(public navCtrl: NavController, public authService: Auth, public loadingCtrl: LoadingController) {

  }

  register(){

    this.showLoader();

    let details = {
        email: this.email,
        password: this.password,
        role: this.role
    };

    this.authService.createAccount(details).then((result) => {
      this.loading.dismiss();
      console.log(result);
      this.navCtrl.setRoot(HomePage);
    }, (err) => {
        this.loading.dismiss();
    });

  }

  showLoader(){

    this.loading = this.loadingCtrl.create({
      content: 'Authenticating...'
    });

    this.loading.present();

  }

}
这就是我得到的错误:

[12:43:17]  typescript: src/pages/signup-page/signup-page.ts, line: 31 
            Property 'loading' does not exist on type 'SignupPage'. 

      L30:  this.authService.createAccount(details).then((result) => {
      L31:    this.loading.dismiss();
      L32:    console.log(result);

[12:43:17]  typescript: src/pages/signup-page/signup-page.ts, line: 35 
            Property 'loading' does not exist on type 'SignupPage'. 

      L34:  }, (err) => {
      L35:      this.loading.dismiss();
      L36:  });

[12:43:17]  typescript: src/pages/signup-page/signup-page.ts, line: 42 
            Property 'loading' does not exist on type 'SignupPage'. 

      L42:  this.loading = this.loadingCtrl.create({
      L43:    content: 'Authenticating...'

[12:43:17]  typescript: src/pages/signup-page/signup-page.ts, line: 46 
            Property 'loading' does not exist on type 'SignupPage'. 

      L46:  this.loading.present();

[12:43:17]  transpile failed 

任何人都可以向我澄清我遗漏了什么,以及我应该学习什么来继续我的项目?

问题在于您的
showLoader()
方法。你正在做:

this.loading = this.loadingCtrl.create({
  content: 'Authenticating...'
});

this.loading.present();
这可能是普通javascript中的合法代码,但typescript正在抱怨,因为您还没有在类中定义
加载
属性。只需定义如下属性:

export class SignupPage {

  role: string;
  email: string;
  password: string;
  loading: LoadingController; //I'm assuming that's the correct type

  constructor(public navCtrl: NavController, public authService: Auth, public loadingCtrl: LoadingController) {

  }
....
}
试试这个

导出类SignupPage{
角色:字符串;
电子邮件:字符串;
密码:字符串;
装载:任何;
构造函数(公共navCtrl:NavController,公共authService:Auth,公共加载Ctrl:LoadingController){
}
....

}
也许您需要在SignupPage类中定义一个名为loading的属性?嗯。。看起来里面好像有打字错误或错误。:)我仍然缺少如何实现这一点的基础知识。我应该如何进行?