2017-12-12 5 views
1

I状況を持っていますイオン3 /アンギュラ4 - - 入力ボタンのペア設定された入力値が動的

だから、
input_to_voice(event, value) { 

    //here I wanted to get a reference to the input value, but I'm stuck 
    console.log(event.target.parentElement.parentElement); 

    let options = { 
     language: "en-GB" 
    }; 

    // Start the recognition process 
    this.speechRecognition.startListening(options) 
     .subscribe(
     (matches: Array<string>) => console.log(matches), 
     (onerror) => console.log('error:', onerror) 
    ) 
    } 

:私は入力に自動的に関数によって計算された値を設定したいボタンをタップし、単一入力の場合 は、これを行うことは容易です。しかし、私はどのように$eventから複数の入力参照を取得し、計算された値を自動的に設定することができますか?

(例:第3の入力ボタンを押すと、そのボタンが入力値を設定する対象の「知る」でしょう)

+1

。単にthis.teste1とthis.teste2を使ってデータにアクセスするか、2つの名前を付けることにします。 –

+0

明らかに反応型を使用しています。それを使用してください:) – Alex

+0

そして、私の機能は、どのような対応する入力ボタンが要求されたかを知っていますか? – Silviu

答えて

0

あなたはちょうどあなたがngModelで使用する変数を作成する必要があります。

private teste: string; 

入力に2つの異なる値が必要な場合は、別の名前の別の変数を作成するだけです。

そしてあなたは、このようなメソッドの内部でそれにアクセスすることができます。

input_to_voice() { 
    console.log(this.teste); 
} 

ngModelを使用すると、あなたの変数に加えた変更は、あなたのHTMLまたはTSファイルに反映されますことを覚えておいてください。

編集

次に、あなたは、このように行うために試みることができる。そして、このインポートします

<ion-input type="text" #teste></ion-input> 

import { ViewChild, ElementRef } from '@angular/core'; 

そして追加

変更inputタグあなたのクラス内のこの行:

@ViewChild('teste') input; 

次に、あなたは次のようにメソッドからの入力値にアクセスすることができます:あなたはすでにngModelを使用している

input_to_voice() { 
    console.log(this.input.nativeElement.value); 
} 
+0

ありがとうございますが、私はこれをしたくありません。 input_to_voice()を使用して、すべての入力に対して変数を作成せずに、どの入力ボタングループから要求を受け取るかを自動的に知りたい。私は$ eventから入力参照を得ることができると思ったが、入力値をどのように設定するのか分からない。 – Silviu

+0

私は理解していると思います。私はこのようにすることをお勧めしませんが、私は私の答えを編集しました。これが役に立ちそうですか? –

+0

複数の入力に対して、1つの異なるタグごとに設定する必要がありますか? "このようにすることはお勧めできません" - いくつかの引数を付けることはできますか? ありがとう! – Silviu

関連する問題