2025-02-17 09:34:28 +08:00
|
|
|
<template>
|
|
|
|
|
<div class="detailLeft">
|
2025-02-25 15:32:55 +08:00
|
|
|
<sketch v-show="currentDetailType == 'sketch'" @addDetail="addDetail"></sketch>
|
2025-02-17 09:34:28 +08:00
|
|
|
<print v-show="currentDetailType == 'print'"></print>
|
|
|
|
|
<color v-show="currentDetailType == 'color'"></color>
|
2025-02-25 15:32:55 +08:00
|
|
|
<addDetails ref="addDetails" @setSloganData="setSloganData"></addDetails>
|
2025-02-17 09:34:28 +08:00
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
<script lang="ts">
|
|
|
|
|
import { defineComponent,computed,ref,provide,nextTick,createVNode,toRefs, reactive} from 'vue'
|
|
|
|
|
// import setDesignItem from '@/component/Detail/setDesignItem2.vue'
|
|
|
|
|
import { ExclamationCircleOutlined } from '@ant-design/icons-vue';
|
|
|
|
|
import { Https } from "@/tool/https";
|
|
|
|
|
import { useStore } from "vuex";
|
|
|
|
|
import { useI18n } from 'vue-i18n'
|
|
|
|
|
import sketch from './sketch.vue'
|
|
|
|
|
import print from './print.vue'
|
2025-02-17 15:24:01 +08:00
|
|
|
import color from './colorBox/index.vue'
|
2025-02-25 15:32:55 +08:00
|
|
|
import addDetails from '@/component/Detail/addDetails.vue'
|
2025-02-17 09:34:28 +08:00
|
|
|
|
|
|
|
|
export default defineComponent({
|
|
|
|
|
components:{
|
2025-02-25 15:32:55 +08:00
|
|
|
sketch,print,color,addDetails
|
2025-02-17 09:34:28 +08:00
|
|
|
},
|
|
|
|
|
setup(props,{emit}) {
|
|
|
|
|
const store = useStore();
|
|
|
|
|
const detailData = reactive({
|
|
|
|
|
selectTitle:'upload',
|
|
|
|
|
selectDetail:computed(()=>store.state.DesignDetailCopy.selectDetail),
|
|
|
|
|
currentDetailType:computed(()=>store.state.DesignDetailCopy.currentDetailType),
|
|
|
|
|
})
|
|
|
|
|
const getDetailListData = reactive({
|
|
|
|
|
total:0,
|
|
|
|
|
pageSize:10,
|
|
|
|
|
currentPage:1,
|
|
|
|
|
})
|
|
|
|
|
const getDetailListDom = reactive({
|
2025-02-25 15:32:55 +08:00
|
|
|
addDetails:null as any,
|
2025-02-17 09:34:28 +08:00
|
|
|
})
|
2025-02-25 15:32:55 +08:00
|
|
|
const addDetail = () =>{
|
|
|
|
|
let addDetails:any = getDetailListDom.addDetails
|
|
|
|
|
addDetails.init(detailData.selectDetail,'')
|
|
|
|
|
}
|
|
|
|
|
const setSloganData = (data:any)=>{
|
|
|
|
|
detailData.selectDetail.sketchString = data
|
|
|
|
|
}
|
2025-02-17 09:34:28 +08:00
|
|
|
|
|
|
|
|
return{
|
|
|
|
|
...toRefs(detailData),
|
|
|
|
|
...toRefs(getDetailListData),
|
|
|
|
|
...toRefs(getDetailListDom),
|
2025-02-25 15:32:55 +08:00
|
|
|
addDetail,
|
|
|
|
|
setSloganData,
|
2025-02-17 09:34:28 +08:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
provide() {
|
|
|
|
|
return {
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
})
|
|
|
|
|
</script>
|
|
|
|
|
<style lang="less" scoped>
|
|
|
|
|
.detailLeft{
|
|
|
|
|
width: 34rem;
|
|
|
|
|
// width: 100%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
}
|
|
|
|
|
</style>
|