2017-10-08 8 views
0
 <md-select i18n-placeholder="language|languages list @@lang" (change)="setLanguage(this.value)" 
      placeholder="Lang"> 
      <md-option value="Lt-uz"> 
       O'z 
      </md-option> 
      <md-option value="ru">Ru</md-option> 
     </md-select> 

上記のコードは未定義の値を渡しています。選択した値を関数に渡す方法は?md-selectの値を関数に渡す

+0

バインドMD-選択コンポーネントTSでInput'変数@バッキング 'へ

はこれを試してみてください。変更時に、@ Input変数を使用するコンポーネントTS内の関数を実行します。明示的に値をmd-selectから関数に渡す必要はありません。 – axlj

+0

'setLanguage()'関数を表示できますか? –

+0

私は以前のコメントの著者によって提案された方法を使用し、それは働いています。ありがとう –

答えて

0

1-これはテンプレート内で使用しないでください。

2 md-selectはクラス変数にバインドされていません。あなたのTSコードで

<md-select i18n-placeholder="language|languages list @@lang" 
      [(ngModel)]="selectedLanguage" 
      (change)="setLanguage()" 
      placeholder="Lang"> 
    <md-option value="Lt-uz"> 
     O'z 
    </md-option> 
    <md-option value="ru">Ru</md-option> 
</md-select> 

export class YourTsClass{ 
    selectedLanguage:string = ''; 
    //.... 
    setLanguage(){ 
    //When this function will be called, selectedLanguage will have the selected value from md-select 
    //You can then use this.selectedLanguage to access its value 

    }    
} 
関連する問題