49 lines
1.2 KiB
Vue
49 lines
1.2 KiB
Vue
<template>
|
|
<div class="app-container">
|
|
<transition name="el-zoom-in-center">
|
|
<api-mask-list v-if="options.showList" @showCard="showCard" />
|
|
</transition>
|
|
<transition name="el-zoom-in-top">
|
|
<api-mask-add v-if="options.showAdd" :data="options.data" @showCard="showCard" />
|
|
</transition>
|
|
<transition name="el-zoom-in-top">
|
|
<api-mask-edit v-if="options.showEdit" :data="options.data" @showCard="showCard" />
|
|
</transition>
|
|
<transition name="el-zoom-in-bottom">
|
|
<api-mask-detail v-if="options.showDetail" :data="options.data" @showCard="showCard" />
|
|
</transition>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
import ApiMaskList from './ApiMaskList'
|
|
import ApiMaskAdd from './ApiMaskAdd'
|
|
import ApiMaskEdit from './ApiMaskEdit'
|
|
import ApiMaskDetail from './ApiMaskDetail'
|
|
|
|
export default {
|
|
name: 'ApiMask',
|
|
components: { ApiMaskList, ApiMaskAdd, ApiMaskEdit, ApiMaskDetail },
|
|
data() {
|
|
return {
|
|
options: {
|
|
data: {},
|
|
showList: true,
|
|
showAdd: false,
|
|
showEdit: false,
|
|
showDetail: false
|
|
}
|
|
}
|
|
},
|
|
methods: {
|
|
showCard(data) {
|
|
Object.assign(this.options, data)
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
|
|
</style>
|