代码拉取完成,页面将自动刷新
<template>
<div>
<CategorySelector
:isDisabled="showStatus !== status.SPU_LIST"
></CategorySelector>
<SpuList
@setShowStatus="changeStatus"
@getSpuInfo="saveSpuinfo"
v-if="status.SPU_LIST === showStatus"
></SpuList>
<SpuForm
@setShowStatus="changeStatus"
:newSpuInfo="newSpuInfo"
v-if="status.SPU_FORM === showStatus"
></SpuForm>
<SkuForm
v-model="showStatus"
v-bind:status.sync="showStatus"
:newSpuInfo="newSpuInfo"
v-if="status.SKU_FORM === showStatus"
></SkuForm>
</div>
</template>
<script>
import CategorySelector from "@/components/CategorySelector";
import SpuList from "@/views/product/spu/components/SpuList/SpuList.vue";
import SpuForm from "@/views/product/spu/components/SpuForm";
import SkuForm from "@/views/product/spu/components/SkuForm";
export default {
name: "Spu",
components: { CategorySelector, SpuList, SpuForm, SkuForm },
data() {
return {
status: {
SPU_LIST: 1,
SPU_FORM: 2,
SKU_FORM: 3,
},
showStatus: 1,
newSpuInfo: {},
};
},
methods: {
// 1. 实现组件间的切换
changeStatus(status) {
this.showStatus = status;
},
// 2. 添加或更新
saveSpuinfo(spuInfo) {
this.newSpuInfo = {
// 此时传过去的是两个数组是null会报错
...spuInfo,
spuImageList: [],
spuSaleAttrList: [],
};
},
},
};
</script>
<style lang="less" scoped></style>
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。