具有角度的json对象的textarea的双向绑定

时间:2016-10-13 13:17:29

标签: javascript angular typescript

我有一个包含不同组件的json对象& layout-component使用此json对象来呈现组件:

例如

public user:Object={
    "name":"Bhushan",
    "address":{
        "data":"229 , MDC 4",
        "component":"AddressComponent"
    },
    "documents":[
        "Marksheets":[
            "SscComponent",
            "HscComponent",
            "EnggComponent"
        ]
    ]
}

现在我已经按照以下方式给[(ngModel)]与textarea进行双向数据绑定:

在视图中:

<textarea style="background-color:black;color:white;" [(ngModel)]="userData" rows="30" cols="120">
  </textarea>
组件中的

//Getter & Setter Of userData
get userData() {
    return JSON.stringify(this.user, null, "\t");
}
set userData(v) {    
    try {
      this.user = JSON.parse(v);
    }
    catch (e) {
      console.log("Invalid JSON Entered");
    }
 }

现在,当我在视图中更改某些内容时,我可以看到在textarea中更改了userData。

但是当我复制粘贴textarea中的新对象时。它说&#39;输入的JSON无效&#39;。

P.S。 Json是有效的&amp;内部的所有组件都使用compiler.compileModuleAndAllComponentsAsync方法加载。

所有这些组件都在一个模块和一个模块内。我正在使用这个json对象加载它们。

我希望能够在textarea&amp;中粘贴新的json对象。所有组件都将相应地呈现。

可能吗?

任何输入?

0 个答案:

没有答案