开始

前端项目结构

- public
- src
    ...
    - components //组件目录
        ...
        - color.js              //主题相关配置
        - options.js            //组件基础、属性、数据信息
        - register-cpt.js       //组件注册器
        - register-option.js    //组件配置表单注册器
...
env.js                          //软件名称、版本号、API请求前缀配置
vue.config.js
  • options.js 中保存所有组件的默认配置项,如文本组件的文字颜色、字体大小等等。
  • register-cpt.js 为组件注册器,此文件的自定义组件将注册为全局组件。
  • register-option.js 为组件配置表单注册器,此文件的自定义配置表单组件将注册为全局组件。

自定义组件创建流程:

在components创建文件夹--->创建组件--->创建组件配置表单--->在options.js设置组件默认配置项  
    --->在registerCpt.js中注册组件--->在registerOption.js注册配置表单--->使用

组件props:

属性名说明类型
option自定义组件的属性和数据源Object
height组件高度Number
width组件宽度Number
show组件是否显示Boolean
design当前是否为设计模式,false为预览模式Boolean

组件配置表单props:

属性名说明类型
attribute自定义组件的自定义属性Object

示例:

<!--简单组件结构示例-->
<template>
  <div>
    文本:{{option.text}}
    宽:{{option.width}}
    高:{{option.height}}
  </div>
</template>

<script setup>
const props = defineProps({
  width: Number,
  height: Number,
  option: Object,
  show: Boolean,
  design: Boolean,
})
</script>

动态数据

自定义组件若未在option.js中声明cptDataForm,则配置栏不会出现数据配置表单,cptDataForm中配置项如下:

属性名说明类型
dataText静态数据String
sql默认SQLString
apiUrl默认API接口地址String
dataSource默认数据源,1:静态数据、2:API接口、3:SQL、4:数据集、5:websocketNumber
pollTime接口默认轮询时间Number
Last Updated:
Contributors: chao