角度<input [value] =“ model” />为何不传递两次输入的值?

时间:2018-06-27 09:11:50

标签: angular input

@Component({
  selector: 'some-component',
  template: `
    <input [value]="model" (change)="setHours('24')">
    <p>{{model}}</p>
  `
})
export class KeyUpComponent_v1 {
  model = '';

  setHours(value: string) {
    this.model = value;
  }
}

https://stackblitz.com/edit/angular-hoq6rn?file=src%2Fapp%2Fkeyup.components.ts

  1. 输入一些内容(onBlur输入值=='24')
  2. 再次输入“为什么”(onBlur输入值==“为什么”) 期望==='24'

我们可以做些什么以使输入值始终等于输入值=='24'吗?

为什么会发生?

1 个答案:

答案 0 :(得分:1)

您已经将值硬编码在(change)="setHours('24')"中,这就是为什么您总是得到相同结果的原因。

要正确实现输入,请阅读:https://angular.io/guide/forms