1.当页面数据被修改时,视图却未重新渲染时可用this.$forceUpdate()强制渲染页面
2.当页面调用了组件时,组件数据为页面传入。页面数据改变,组件的数据不随之改变时,给组件加上key值,每次更新时,改变key值。这类问题我是在for循环中调用组件遇到的问题
<template>
<view v-for="(item, index) in list" :key="iindex">
<componentName :data="item" :key="componentKey"></componentName>
</view>
</template>
<script>
export default {
data() {
return {
list: "",
componentKey: 1
}
},
onLoad() {
this.getData();
},
methods: {
getData() {
var _this = this
uni.request({
url: 'http://www.domain.com/api/request',
success: (res) => {
_this.list = res.data;
++_this.componentKey;
}
});
}
//每次更新list后只需改变componentKey,eg:++componentKey
}
}
</script>