knowledge-vue监听传入值变化请求后端数据更新
1.前言
一个查看器A,可由多个项目进入,通过监听传入值的变化进行请求后端数据更新。
2.实现
<script>
import ProjectDataApi from '@/views/modules/js/ProjectDataApi.js'
export default {
name:'demo',
// 传入数据
props: {
projectData: {},
},
data() {
return {
// 请求参数
ParmsData: {
pojId: '',
pojVersion: '',
},
// 响应接收参数
projectList: {
pojInfo:{}
},
}
},
methods: {
init(newVal){
// 判断是否为空 中断
if (!newVal || undefined == newVal.id || null == newVal.id) {
return
}
this.ParmsData.pojId = newVal.id
this.ParmsData.pojVersion = newVal.Version
ProjectDataApi.getProjectList(this.ParmsData).then((res) => {
this.projectList = res.data
})
}
},
watch: {
projectData: function (newVal) {
this.init(newVal)
},
},
activated() {
this.init(this.projectData)
}
}
</script>
通过watch进行监听,并在初始化时也进行请求渲染