Javascript 完全替换对象

Javascript 完全替换对象,javascript,polymer,polymer-1.0,Javascript,Polymer,Polymer 1.0,我试图替换聚合物元素中的一个完整对象(属性),我尝试了几种可能性,但都不起作用 以下是我到目前为止的想法: prefill: function() { randomChild(function(r) { // Does not work var t = Object.assign(this.child, r); // r is an existing Child-object this.set("child", t);

我试图替换聚合物元素中的一个完整对象(属性),我尝试了几种可能性,但都不起作用

以下是我到目前为止的想法:

prefill: function() {
    randomChild(function(r) {

        // Does not work
        var t = Object.assign(this.child, r); // r is an existing Child-object
        this.set("child", t);

        // Does not work
        this.child.firstName = r.firstName;

        // Works
        this.set("child.firstName", r.firstName);

        // Also works
        this.child.lastName = r.lastName;
        this.notifyPath("child.lastName");
    }.bind(this));
}

我如何用
r
替换
this.child
,而不为每个子属性调用
this.notifyPath(“…”)

为了观察对象和数组中的变化,可以使用与上面相同的方法

this.set('child',r);
这里


测试(如果您看到“测试”消息,则无法加载Necasary库。请稍后重试并检查开发工具。(F12)
:主持人{
显示:块;
身高:100%;
}
姓名:[[child.Name]],[[child.Name].
HTMLImports.whenReady(函数(){ 类WebApp扩展了Polymer.Element{ 静态get是(){return'web app';} 静态获取属性(){return{ r:{ 类型:对象, value(){return{};} } }}; 静态get observer(){return['checkDataToTransfer(r)]}; 就绪(){ super.ready(); Polymer.RenderStatus.afterNextRender(这个,()=>{ var obj={“姓名”:“鲍勃”,“姓氏”:“马利”}; 设置超时(()=>{ 此.set('r',obj); },2000); }); } checkDataToTransfer(r){ 日志(“分配给另一个对象”,r); 此.set('child',r); } } customElements.define(WebApp.is,WebApp); });