Ionic TypeScript错误(属性' nav'在类型' HomePage'上不存在)

时间:2017-08-05 07:54:32

标签: html angular typescript ionic2

我正在关注这个Ionic 2教程并遇到问题。问题出在TypeScript中(参见图片)。这是video tutorial I followed

the error message

以下是src/pages/home/home.html



<ion-header>
  <ion-navbar primary *navbar>
    <ion-title>
      Tasker
    </ion-title>

    <ion-buttons end>
      <button ion-button icon-only>
        <ion-icon name="add"></ion-icon>
      </button>
    </ion-buttons>

  </ion-navbar>
</ion-header>

<ion-content>

  <ion-list>

    <ion-item *ngIf="!task.length">
      No Task Available
      <p> Click <ion-icon name="add"> to add task</ion-icon></p>
    </ion-item>

    <ion-item-sliding *ngFor="#t of tasks">
      <ion-item>
        <ion-toggle></ion-toggle>
        <ion-label>
          <h2 [ngClass]="t.status">{{t.task}}</h2>
          <p [ngClass]="t.priority">{{t.priority}}</p>
        </ion-label>
      </ion-item>

      <ion-item-options>

        <button primary><ion-icon name="clipboard"></ion-icon>Edit</button>
        <button danger><ion-icon name="trash"></ion-icon>Delete</button>

      </ion-item-options>
    </ion-item-sliding>


  </ion-list>

</ion-content>
&#13;
&#13;
&#13;

src/pages/home/home.ts错误发生的地方!:

&#13;
&#13;
import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';

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

  static get parameters(){
    return [[NavController]]
  }


  constructor(nav) {
    this.nav = nav;


    this.tasks = [
      {task:'test1', priority:'low', status:'pending'},
      {task:'test2', priority:'high', status:'done'},
      {task:'test3', priority:'normal', status:'pending'}
    ]
  }

}
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:3)

我看到一些打字稿问题:

  • 根本不需要static get parameters功能。
  • 如果您正在注射NavController,您可以这样指定:

    constructor(private nav:NavController) {
         //this.nav = nav; This is not required if you have set access 
         //specifier in constructor parameter
        // removed rest of code for brevity
    }
    
  • 最后,如果您需要在Typescript中创建一个类变量,则需要在类中声明。

    export class HomePage {
        tasks:any[]=[]
        // contstructor and other code
    }
    

请注意,参考视频似乎使用了更老版本的Ionic。我建议你找一个最近的教程视频。