如何将“ngModel”与表单控件名称一起使用?

use*_*080 3 angular angular-forms angular8

我有 2 个文本区域,如果用户输入或插入值,还需要更新其他文本区域字段。

我可以使用change该函数来做到这一点,但我尝试使用带有控件名称的 ng-model 。出现错误。如何解决这个问题?或者我们不能使用 ngmodel 来收集控件名称吗?

这是我的文本区域:

<textarea name="control-name" [(ngModel)]="control_name_text" formControlName="ControlName"  [ngModelOptions]="{standalone: true}" cols="85" rows="5" placeholder="Enter Control Name"></textarea>
Run Code Online (Sandbox Code Playgroud)

另一个:

<textarea name="pageUrl" [value]="control_name_text"  cols="85" rows="5" placeholder=""></textarea>
Run Code Online (Sandbox Code Playgroud)

control_name_text我也在 ts 文件中声明了- 。得到错误为:

Can't bind to 'ngModelOptions' since it isn't a known property of 'textarea'.
Run Code Online (Sandbox Code Playgroud)

有什么帮助吗?提前致谢。

dev*_*don 5

如果这就是您正在做的事情,则没有理由将 ngModel 与反应式表单一起使用。

在这种情况下,您可以从表单控件中获取值并将其用作输入值

<form [formGroup]="exampleForm">
  <textarea formControlName="userText" cols="85" rows="5" ></textarea>
  <textArea [value]="userText"> </textArea> 
</form>
Run Code Online (Sandbox Code Playgroud)

这不是必需的,但在您的组件中,您还可以使用 get 属性来缩短 formControl 引用。

get userText() {return this.exampleForm.get('userText').value }
Run Code Online (Sandbox Code Playgroud)

示例: https: //stackblitz.com/edit/angular-sjn6du