Files
dvcp_v2_webapp/packages/3.0.0/AppContentInfo/AppContentInfo.vue

83 lines
1.7 KiB
Vue
Raw Normal View History

2021-12-18 17:16:42 +08:00
<template>
<div class="doc-circulation ailist-wrapper">
<keep-alive :include="['List']">
2021-12-24 20:01:48 +08:00
<component ref="component" :moduleName="moduleName" :moduleId="moduleId" :is="component" @change="onChange" :params="params" :instance="instance" :dict="dict"></component>
2021-12-18 17:16:42 +08:00
</keep-alive>
</div>
</template>
<script>
import List from './components/List'
import Add from './components/Add'
import Detail from './components/Detail'
export default {
name: 'AppContentInfo',
label: '内容发布',
props: {
instance: Function,
dict: Object
},
data () {
return {
component: 'List',
params: {},
moduleId: '',
2021-12-24 20:01:48 +08:00
include: [],
moduleName: ''
2021-12-18 17:16:42 +08:00
}
},
components: {
Add,
List,
Detail
},
2021-12-21 15:31:49 +08:00
created () {
2021-12-18 17:16:42 +08:00
this.moduleId = this.$route.query.moduleId
2021-12-24 20:01:48 +08:00
this.instance.post('/app/appcontentmoduleinfo/queryDetailById?id=' + this.$route.query.moduleId).then(res => {
if (res.code === 0) {
this.moduleName = res.data.moduleName
}
})
2021-12-18 17:16:42 +08:00
},
methods: {
onChange (data) {
if (data.type === 'Add') {
this.component = 'Add'
this.params = data.params
}
if (data.type === 'Detail') {
this.component = 'Detail'
this.params = data.params
}
if (data.type === 'list') {
this.component = 'List'
this.params = data.params
this.$nextTick(() => {
if (data.isRefresh) {
this.$refs.component.getList()
}
})
}
}
}
}
</script>
<style lang="scss">
.doc-circulation {
height: 100%;
background: #F3F6F9;
overflow: auto;
}
</style>