PageHelpOtherConfigurations.vue 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <script setup lang="ts">
  2. import {copyStrFunc} from "@/utils/public";
  3. import {PageStore} from "@/views/data-base/page-editor-help-v2/page-help-v2";
  4. import {CyJsonEditorDialog} from "@/components/cy/cy-monaco-editor/CyMonacoEditor";
  5. import {ElButton} from "element-plus";
  6. const props = defineProps<{
  7. store: PageStore
  8. }>()
  9. function generateTableColumns() {
  10. const {getColumns, tableBind} = props.store
  11. getColumns(tableBind, 'mainTableRef');
  12. }
  13. function generateQuery() {
  14. let str = "";
  15. const length = props.store.pageData.value.header.length
  16. props.store.pageData.value.header.forEach((item, index) => {
  17. str += `\t${item.key}${(index !== length - 1 ? "," : "")}\n`
  18. })
  19. str = `const {\n${str}} = body`
  20. copyStrFunc(str)
  21. }
  22. function saveData() {
  23. props.store.handleSavaData()
  24. }
  25. function editorPageJson() {
  26. CyJsonEditorDialog(props.store.pageData.value, {fullScreen: true}).then(res => {
  27. props.store.mutation.setPageData(res.json)
  28. })
  29. }
  30. </script>
  31. <template>
  32. 提交地址:
  33. <el-input type="textarea"
  34. v-model="props.store.pageData.value.submitUrl"/>
  35. <el-button @click="generateQuery">生成查询</el-button>
  36. <el-button @click="generateTableColumns">生成表格列</el-button>
  37. <el-button @click="saveData">保存</el-button>
  38. <el-button @click="store.defaultValue">默认值</el-button>
  39. <el-button @click="editorPageJson">编辑页面JSON对象</el-button>
  40. </template>
  41. <style scoped lang="scss">
  42. </style>