Polymer2.0 数据更改页面不刷新的解决方法

当你的数据在js中已经改变 ,但是页面中却看不到变化时,可使用下列方法:

 

1,设置属性的 reflectedToAttribute: true , 不过大多数情况下无效,另外notify:true 的意思是允许数据向外层传递

2,可以通过 this.set('propPath', propValue) 或者 this.propPath = propValue; this.notifyPath('propPath');

     例如: obj.n.m = v; 或者  arr[0] = {key: v}; 均不能引起页面的刷新 改写如下

     this.set('obj.n.m', v) ;或者 obj.n.m = v; this.notifyPath('obj.n.m');            页面刷新

     this.set('arr.0.key', v); 或者 arr[0] = {key: v}; this.notifyPath('arr.0.key');  页面刷新

 

3,如果是数组的话 还可以使用 this.push('propPath', propValue);

     arr[0] = {key: v}; 页面不刷新;

     this.push('arr', {key:v} ;

4,提供一个简单粗暴的方法

    this.obj = JSON.parse( JSON.stringify( this.obj) ) 

 

 

 

你可能感兴趣的:(polymer)