コンポーネントテンプレートからプレーンストリングを別のコンポーネントに渡すことはできますか?例えば...angular2の別のコンポーネントtplからコンポーネントに文字列を渡す
コンポーネント1つのTPL:
<survey-step-complete-msg [messageType]="'completed-survey'"></survey-step-complete-msg>
コンポーネント2 .TS
import {Component, Input} from '@angular/core';
@Component({
selector: 'survey-step-complete-msg',
templateUrl: '../../../../public/template/topic/survey-step-complete-msg.html'
})
export class SurveyStepCompleteMsgComponent {
@Input() messageType;
constructor(){
console.log(this.messageType);
}
}
コンポーネント2 TPL:
<div [ngSwitch]="messageType">
<p *ngSwitchCase="completed-survey">Thanks</p>
<p *ngSwitchCase="survey-step-required-fields-missing">Stuff missing</p>
<p *ngSwitchCase="survey-required-fields-missing">Stuff missing</p>
<p *ngSwitchCase="survey-thanks-now-save">Thanks, don't forget to save.</p>
</div>
現在の結果は、TS要素であります@入力は常に定義されていません。
ああ、よろしく!バンドルありがとう!そう多くの新しいsytax ..まだそれをすべて詰め込もうとしている:D – John
実際には...それは解決されてうれしい – John
が欠けていたスイッチの文字列の二重包囲だけだった。 –