#Angular5のReactiveFormsを使用しています。
AbstractControl.setValueメソッドを使用して値をセットしているのですが、chengeイベントが発火せずに困っています。
どなたか上手いこと呼び出す方法をご存知ないでしょうか?
【特記事項】
- 値のセットはAbstractControl.setValueメソッドにこだわってない
- chengeイベントではなくてもchange.Directive.ts で変更を拾えれば問題ない
- 以下のコードに記載してないがDirectiveの登録などは行っている(画面からはイベントが拾える状態)
####sample.component.html
html
1<input type="text" formControlName="hoge" change />
####sample.component.ts
typescript
1public form: FormGroup; 2 3constructor(private _http: Http, @Inject('BASE_URL') private _baseUrl: string, private _fb: FormBuilder, private _router: Router) { 4 this.form = this._fb.group({ 5 filePath: new FormControl('') 6 }) 7} 8 9get hoge(): AbstractControl { 10 return this.form.get("hoge") as AbstractControl; 11} 12 13click() { 14 this.hoge.setValue("hogehoge"); 15} 16
####change.Directive.ts
typescript
1@Directive({ 2 selector: 'input[change]' 3}) 4 5export class TrimDirective { 6 // 呼び出されない 7 @HostListener('change') 8 onChange() { 9 alert("呼び出されない"); 10 } 11}
回答2件
あなたの回答
tips
プレビュー