vue中出现组件不渲染更新的问题,方法总结
vue中出现组件不渲染更新的问题,方法总结1.用this.$forceUpdate()方法例如:this.data.status= false; // 数据改变this.$forceUpdate(); // 调用2.如果是object或者是array类型的话改变值最好用this.set(),this.set(),this.set(),this.delete(),array.splice()等方法进
vue中出现组件不渲染更新的问题,方法总结
1.用this.$forceUpdate()方法
例如:
this.data.status= false; // 数据改变
this.$forceUpdate(); // 调用
2.如果是object或者是array类型的话改变值最好用 this. s e t ( ) , t h i s . set(),this. set(),this.delete(),array.splice()等方法进行修改
this.$set(this.data,'status',false)
3.用v-if来控制组件让改变值后组件件消失后重新来渲染一次。
视图
<Input v-if="show" key="1" id="keyword" name="keyword"
prefix="ios-search" placeholder="搜索"/>
js:
$this.show= false;
this.data.status= false;
$this.show= true;
4.用v-if如果值改变成功了没有重新渲染的话很可能是组件太相似让vue没有识别出来,必须加个key来区分这些组件。
<Input v-if="tabDefault==='company'" key="1" id="keyword"
name="keyword" prefix="ios-search" placeholder="搜索"/>
<Input v-if="tabDefault==='role'" key="2" id="keyword2"
name="keyword2" prefix="ios-search" placeholder="搜索"/>
<Input v-if="tabDefault==='interior'" key="3" id="keyword3"
name="keyword3" prefix="ios-search" placeholder="搜索"/>
更多推荐
所有评论(0)