index.vue 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <template>
  2. <div class="go-chart-configurations-setting" v-if="targetData">
  3. <!-- 名称 -->
  4. <SettingItemBox name="名称">
  5. <n-input
  6. type="text"
  7. maxlength="6"
  8. show-count
  9. placeholder="请输入图表名称"
  10. size="small"
  11. v-model:value="targetData.chartConfig.title"
  12. />
  13. </SettingItemBox>
  14. <!-- 尺寸 -->
  15. <SizeSetting :chartAttr="targetData.attr" />
  16. <!-- 位置 -->
  17. <PositionSetting :chartAttr="targetData.attr" />
  18. <!-- 自定义配置项 -->
  19. <component :is="targetData.chartConfig.conKey" :optionData="targetData.option"></component>
  20. <!-- 全局设置 -->
  21. <GlobalSetting :optionData="targetData.option" :in-chart="true" />
  22. </div>
  23. </template>
  24. <script setup lang="ts">
  25. import { computed, Ref } from 'vue'
  26. import { useChartEditStore } from '@/store/modules/chartEditStore/chartEditStore'
  27. import { GlobalSetting, PositionSetting, SizeSetting } from '@/components/ChartItemSetting/index'
  28. import { CreateComponentType } from '@/packages/index.d'
  29. import { SettingItemBox } from '@/components/ChartItemSetting/index'
  30. const chartEditStore = useChartEditStore()
  31. const targetData: Ref<CreateComponentType> = computed(() => {
  32. const list = chartEditStore.getComponentList
  33. const targetIndex = chartEditStore.fetchTargetIndex()
  34. return list[targetIndex]
  35. })
  36. </script>
  37. <style lang="scss" scoped>
  38. @include go('chart-configurations-setting') {
  39. }
  40. </style>