2017-05-17 4 views
0

の私はイベントページからのモーダルを表示する:次のようにイオン性2モーダル。インラインテンプレート - 例外TypeError:プロパティを読み取ることができません「アイテム」未定義

//event.html 
<form [formGroup]="newEventForm"> 

     <ion-item> 
     <ion-label floating>Title</ion-label> 
     <ion-input formControlName="title" type="text"></ion-input> 
     </ion-item> 

     <ion-item> 
     <ion-label>Sport</ion-label> 
     <ion-select formControlName="sport"> 
      <ion-option value="Running">Running</ion-option> 
      <ion-option value="Football">Football</ion-option> 
      <ion-option value="Yoga">Yoga</ion-option> 
      <ion-option value="Golf">Golf</ion-option> 
     </ion-select> 
     </ion-item> 

     <ion-item> 
     <ion-label>Début</ion-label> 
     <ion-datetime displayFormat="DD MMM YYYY" formControlName="timeStarts"></ion-datetime> 
     </ion-item> 

     <ion-item> 
     <ion-label>Où</ion-label> 
     <ion-input formControlName="location" type="text" (click)="presentNewLocationModal()"></ion-input> 
     </ion-item> 

私はイベントクラスを実装:

//event.ts  
constructor(public modalCtrl: ModalController, public formBuilder: FormBuilder) { 
     // Creating the newEventForm and specifying controls 
     this.newEventForm = this.formBuilder.group({ 
      title: ['', Validators.required], 
      sport: ['', Validators.required], 
      timeStarts: ['', Validators.required], 
      location: ['', Validators.required] 
     }); 
     } 

     presentNewLocationModal() { 
     let modal = this.modalCtrl.create(NewLocationModal); 
     modal.present(); 
     } 

そして、私のモーダルを書いた。 ビュー:

<ion-header> 
    <ion-toolbar> 
    <ion-title> 
     Choisir un lieu 
    </ion-title> 
    <ion-buttons start> 
     <button ion-button (click)="dismiss()"> 
     <span ion-text color="primary" showWhen="ios">Cancel</span> 
     <ion-icon name="md-close" showWhen="android, windows"></ion-icon> 
     </button> 
    </ion-buttons> 
    </ion-toolbar> 
</ion-header> 
<ion-content> 
    Choisir un lieu 
</ion-content> 

クラス:モーダルを提示し、 "Où" の入力をクリックしたときに、私は次のエラーを取得する

import { Component } from '@angular/core'; 
import { Platform, NavParams, ViewController } from 'ionic-angular'; 

@Component({ 
    selector: 'modal-new-location', 
    templateUrl: 'new-location-modal.html' 
}) 
export class NewLocationModal { 

    constructor(public platform: Platform, public viewCtrl: ViewController) { 
    console.log('NewLocationModal#constructor'); 
    } 

    dismiss() { 
    this.viewCtrl.dismiss(); 
    } 
} 

:コンストラクタが呼ばれ

EXCEPTION: Error in ./NewLocationModal class NewLocationModal - inline template:22:14 caused by: Cannot read property 'items' of undefined 

TypeError: Cannot read property 'items' of undefined 
    at CompiledTemplate.proxyViewClass.View_NewLocationModal0.detectChangesInternal (/AppModule/NewLocationModal/component.ngfactory.js:363:46) 
    at CompiledTemplate.proxyViewClass.AppView.detectChanges (http://localhost:8100/build/main.js:117531:14) 
    at CompiledTemplate.proxyViewClass.DebugAppView.detectChanges (http://localhost:8100/build/main.js:117726:44) 
    at CompiledTemplate.proxyViewClass.AppView.internalDetectChanges (http://localhost:8100/build/main.js:117516:18) 
    at CompiledTemplate.proxyViewClass.View_NewLocationModal_Host0.detectChangesInternal (/AppModule/NewLocationModal/host.ngfactory.js:29:19) 
    at CompiledTemplate.proxyViewClass.AppView.detectChanges (http://localhost:8100/build/main.js:117531:14) 
    at CompiledTemplate.proxyViewClass.DebugAppView.detectChanges (http://localhost:8100/build/main.js:117726:44) 
    at ViewContainer.detectChangesInNestedViews (http://localhost:8100/build/main.js:117863:37) 
    at CompiledTemplate.proxyViewClass.View_ModalCmp0.detectChangesInternal (/IonicModule/ModalCmp/component.ngfactory.js:46:14) 
    at CompiledTemplate.proxyViewClass.AppView.detectChanges (http://localhost:8100/build/main.js:117531:14) 
    at CompiledTemplate.proxyViewClass.DebugAppView.detectChanges (http://localhost:8100/build/main.js:117726:44) 
    at CompiledTemplate.proxyViewClass.AppView.internalDetectChanges (http://localhost:8100/build/main.js:117516:18) 
    at CompiledTemplate.proxyViewClass.View_ModalCmp_Host0.detectChangesInternal (/IonicModule/ModalCmp/host.ngfactory.js:30:19) 
    at CompiledTemplate.proxyViewClass.AppView.detectChanges (http://localhost:8100/build/main.js:117531:14) 
    at CompiledTemplate.proxyViewClass.DebugAppView.detectChanges (http://localhost:8100/build/main.js:117726:44) 

何とかコードの一部が、私がイベントを自分で使用していない "items"変数にアクセスしようとしています...どんな考えですか?ところで

私がtemplateUrlを使用しながら、「インラインテンプレート」と言われている理由を私は理解していない...

は**** EDITは**** エラーは、私が使用している場合にのみ発生するようですモーダルのtemplateUrl。 .tsファイルのビューを "template"で実装してもエラーが発生しない場合

答えて

1

hereと述べたように、問題はIonicに関連するバグのためであると思われます。最新バージョンへのアップグレードはそれを解決しました。

+0

この回答を回答として選択できますか? – sebaferreras

関連する問題