当一个组件有一个字符串输入,并且它对该字符串输入进行了更改时,更改不会更改原始数据。当对字符串数组输入做同样的事情时,它确实改变了原始数据。
具有inputs.ts的组件:
@Input('str') str:string;
@Input('strArray') str:string[];
changeFunc(){
this.str = "changed"
this.strArray.push("changed")
}
具有data.ts的组件:
strData:string = "i am string";
strArrayData:string[] = ["i","am","array"]
具有data.html的组件:
<component-with-inputs [str]="strData" strArray="strArrayData">
</component-with-inputs>
因此,当调用changeFunc时,带有数据的组件上的原始数据将如下所示:
"i am string";
["i","am","array","changed"]
字符串不会改变,但字符串数组会改变。怎样才能让字符串也改变呢?
https://stackoverflow.com/questions/56468170
复制相似问题