Javascript 角度6只读文本区域赢得';不能从第二个文本区域绑定

Javascript 角度6只读文本区域赢得';不能从第二个文本区域绑定,javascript,html,angular,typescript,Javascript,Html,Angular,Typescript,使用Angular 6和Material控件,我在只读文本区域中显示数据(字符串数组)。我有第二个可编辑文本区域,我想在其中输入文本,然后使用按钮,将第二个区域的文本动态添加到(第一个)只读文本区域 我还尝试了单向绑定和插值。调试时,我可以看到我的新文本被推送到数据字符串数组中。无论如何,更新后的字符串数组不会显示在第一个文本区域中 this.comments:string[]; 新成员:字符串; 此注释=数据; 新来者=''; 添加新成员(新成员:字符串){ 如果(newComment.le

使用Angular 6和Material控件,我在只读文本区域中显示数据(字符串数组)。我有第二个可编辑文本区域,我想在其中输入文本,然后使用按钮,将第二个区域的文本动态添加到(第一个)只读文本区域

我还尝试了单向绑定和插值。调试时,我可以看到我的新文本被推送到数据字符串数组中。无论如何,更新后的字符串数组不会显示在第一个文本区域中

this.comments:string[];
新成员:字符串;
此注释=数据;
新来者='';
添加新成员(新成员:字符串){
如果(newComment.length>0){
this.comments.push(newComment+'\n');
新来者='';
this.saModified=true;
}
}


在第二个
文本区域中,您正在使用
[ngModel]=“comments”
,将其更改为
[ngModel]=“comments.toString()”
,或者更好,使用
*ngFor
来显示注释。

我认为您的声明
这个有问题
,您不能使用
关键字进行声明。同时,如果要使用字符串数组,则必须启动
注释
,如
注释:字符串[]=[]或者您可以使用如下构造函数=>

comments: string[]=[];
constructor(){
  this.comments=[];
}
然后您必须使用
[ngModel]=“comments.toString()”
而不是
[ngModel]=“comments”


注意:这是正在运行的演示代码链接。

您需要将
name=“comments”
#comments='ngModel'
添加到您的textarea元素中,ngModel才能正常工作

请检查我的答案,并让我知道是否对您有效。祝福:-)谢谢rdr20-“comments.toString()”解决了我的问题。我也将修改*ngFor并比较其行为。感谢Linker的回复。这里发布的代码是伪代码,我对声明进行了修改(我没有在实际代码中定义它们)。而且,您对“comments.toString()”的建议是正确的。但是,rdr20比你快了几个小时。而且,Stackblitz演示非常棒。再次感谢。没问题@rnoftz。我很高兴你的问题解决了。祝你好运:-)