Files
dvcp_v2_webapp/project/pingchang/apps/AppOrganizationChange/AppOrganizationChange.vue
2022-10-21 11:53:29 +08:00

62 lines
1.3 KiB
Vue

<template>
<section class="AppOrganizationChange">
<keep-alive :include="['List']">
<component :is="currentPage" :instance="instance" :selected.sync="selected" :params="params" :dict="dict" @change="onChange"/>
</keep-alive>
</section>
</template>
<script>
import {mapState} from "vuex";
import addChange from "./components/addChange.vue";
import List from "./components/List.vue";
import organizationSetting from "./components/organizationSetting.vue";
export default {
name: "AppOrganizationChange",
label: "组织换届",
props: {
instance: Function,
dict: Object,
},
components: {
List,
addChange,
organizationSetting,
},
computed: {
...mapState(['user']),
currentPage() {
if (this.$route.hash == "#add") {
return addChange
} else if (this.$route.hash == "#setting") {
return organizationSetting
} else return List
}
},
data() {
return {
component: "List",
params: {},
include: [],
selected: {},
}
},
methods: {
onChange(data) {
this.params = data.params;
},
},
created() {
let {organizationId: id, organizationName: name} = this.user.info
this.selected = {id, name}
}
}
</script>
<style lang="scss" scoped>
.AppOrganizationChange {
height: 100%;
}
</style>