goView二开低代码平台1.0

官网文档地址:GoView 说明文档 | 低代码数据可视化开发平台

简介:GoView 是一个拖拽式低代码数据可视化开发平台,通过拖拽创建数据大屏,使用Vue3框架,Ts语言和NaiveUI组件库创建的开源项目。安装步骤和地址文档里都有这里就不介绍了,本文主要介绍怎么基于goView项目实现低代码平台开发的大致介绍。

本文实现需求:创建新的根目录,与子目录和自定义组件

第一步:找到src下的packages下的index.d.ts,

第二步:添加新根目录(注意名称对应)

第三步:根标签要添加一个图标view/chart/ContentCharts/hooks/useAside.hook.ts下添加图标

第四步:到packages下的components新建一个文件夹,注意文件夹名称要对应,此时文件夹为空,观察同级文件夹结构为index.ts和index.d.ts和几个文件夹,所以我们需要在新建的这个文件夹下新建一个文件夹,一个index.ts和index.d.ts,当然也可以直接复制同级下面的

我新建了一个文件夹(因为我想做一个轮播图所以就这样命名了),此处解释一下index.ts和index.d.ts的作用,index.ts用来引入各个自定义的子分类,一起导出,index.d.ts就是子分类的命名所以我这里的命名如下(其实就是第二层分类,这里也可以定义一个大的名字比如:装饰,然后里面多添加几个子组件)

第五步:此时记住上图导出的这个变量,把他引入到src/packages/index.ts内        

第六步:这里我们要准备一张图片,用来显示当作缩略图,把这张图片放在src/assets/images/chart/根文件夹名称/图片.png(注意图片命名要和自定义组件名称一致所以我这里的图片命名为carousel01.png)

第七步:自定义组件里面的结构是index.ts文件加上自定义组件的文件夹,这里index.ts的作用和外层的是一样的其中Carousel01内的结构为,可从其他文件复制也可自己新建(建议直接复制过来),这里我们首先看四个文件中的index.ts改成下图,请仔细观察下图进行配置,

第八步:最里层的index.ts文件写好了,可以写外层的index.ts了,如下图,请注意名称一致

第九步:内层剩余三个文件介绍其中config.ts是用来定义变量的,index.vue就是自定义的组件,而config.vue就是右侧的自定义编辑板

config.vue:

<template><!-- 设置项内容 --><CollapseItem name="内容" expanded><SettingItemBox name="文字" alone><SettingItem><n-input v-model:value="optionData.dataset" size="small"></n-input></SettingItem></SettingItemBox></CollapseItem>
</template><script setup lang="ts">
import { PropType } from 'vue'
import { CollapseItem, SettingItemBox, SettingItem } from '@/components/Pages/ChartItemSetting'
import { option } from './config'const props = defineProps({optionData: {type: Object as PropType<typeof option>,required: true}
})
</script>
<style scoped lang="scss">
.bgcss{::v-deep(.item-right){grid-template-columns: 1fr !important;}
}
</style>

index.vue:

<template><!-- 展示渲染文件 --><div>{{dataset}}</div>
</template><script setup lang="ts">
import { PropType, toRefs } from 'vue'
import { CreateComponentType } from '@/packages/index.d'
import { getUUID } from '@/utils'
const props = defineProps({chartConfig: {type: Object as PropType<CreateComponentType>,required: true}
})
const id = getUUID()
const { w, h } = toRefs(props.chartConfig.attr)
const { dataset } = toRefs(props.chartConfig.option)</script><style lang="scss" scoped>
.button01{width:100%;height:100%
}
</style>

config.ts:

// 数据相关文件
import { PublicConfigClass } from '@/packages/public'
import { chartInitConfig } from '@/settings/designSetting'
import { CreateComponentType } from '@/packages/index.d'
import { Carousel01Config } from './index'
import cloneDeep from 'lodash/cloneDeep'export const option = {dataset: '666666轮播图'
}export default class Config extends PublicConfigClass implements CreateComponentType {public key = Carousel01Config.keypublic attr = { ...chartInitConfig, w: 500, h: 70, zIndex: 1 }public chartConfig = cloneDeep(Carousel01Config)public option = cloneDeep(option)
}

效果图:

 此处我的子目录没有显示,因为我只有一个分类所以才不显示,可以重复上面的操作再加一个分类就会有分类了,至于怎么让这里的文本变成轮播图直接在index.vue和config.vue里面改就可以了

goView原理:我的大致理解是左边显示出来的都是图片,每个图片有对应的key值,当拖拽或选中某个图片是根据key只找到对应组件,进行动态创建。可以看下这篇文章:理解了GoView低代码平台(可视化大屏)的开发原理,基于它进行了二开-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/500295.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机网络-L2TP VPN基础实验配置

一、概述 上次大概了解了L2TP的基本原理和使用场景&#xff0c;今天来模拟一个小实验&#xff0c;使用Ensp的网卡桥接到本地电脑试下L2TP拨号&#xff0c;今天主要使用标准的L2TP&#xff0c;其实在这个基础上可以加上IPSec进行加密&#xff0c;提高安全性。 网络拓扑 拓扑说明…

ListenAI 1.0.6 | 解锁订阅的文本转语音工具,支持朗读文档和网页

ListenAI是一款强大的文本转语音工具&#xff0c;能够将文字转换为逼真的语音&#xff0c;让用户随时随地倾听。它提供多种自然声音选择&#xff0c;适合不同内容。用户可以自定义语速和音量&#xff0c;获得个性化的体验。该软件无缝整合文档和网页内容&#xff0c;方便多任务…

torch.nn.GRU介绍

torch.nn.GRU 是 PyTorch 提供的一种循环神经网络(RNN)模块,与 LSTM 类似,但结构更简单。GRU(Gated Recurrent Unit,门控循环单元)通过较少的门控机制减少了计算复杂度,同时仍能有效解决标准 RNN 中的梯度消失问题。 GRU 的核心机制 GRU 的门控机制包括两个门:更新门…

MySQL数据库笔记——多版本并发控制MVCC

大家好&#xff0c;这里是Good Note&#xff0c;关注 公主号&#xff1a;Goodnote&#xff0c;本文详细介绍MySQL的并发控制&#xff1a;多版本并发控制MVCC。 文章目录 背景介绍数据库并发控制——锁机制悲观锁和乐观锁悲观锁乐观锁 数据库并发控制——MVCC 的引入MVCC 和锁机…

python数据分析之爬虫基础:selenium详细讲解

目录 1、selenium介绍 2、selenium的作用&#xff1a; ?3、配置浏览器驱动环境及selenium安装 4、selenium基本语法 4.1、selenium元素的定位 4.2、selenium元素的信息 4.3、selenium元素的交互 5、Phantomjs介绍 6、chrome handless模式 1、selenium介绍 &#xff0…

案例分析-采样率对模拟链路的带宽的影响

目录 问题来源: 情况分析: 总结 问题来源: 在进行模拟带宽调整时,发现设计值 与实测值,不一样,就这一问题,进行详细分析。 情况分析: 在本项目中,采用巴特沃兹四阶滤波器,设计带宽350M,改滤波器设计可以采用fiter solution工具进行设计,实测值仅仅260M,因此针…

小程序租赁系统构建指南与市场机会分析

内容概要 在当今竞争激烈的市场环境中&#xff0c;小程序租赁系统正崭露头角&#xff0c;成为企业转型与创新的重要工具。通过这个系统&#xff0c;商户能够快速推出自己的小程序&#xff0c;无需从头开发&#xff0c;节省了大量时间和资金。让我们来看看这个系统的核心功能吧…

改善 Kibana 中的 ES|QL 编辑器体验

作者&#xff1a;来自 Elastic Marco Liberati 随着新的 ES|QL 语言正式发布&#xff0c;Kibana 中开发了一种新的编辑器体验&#xff0c;以帮助用户编写更快、更好的查询。实时验证、改进的自动完成和快速修复等功能将简化 ES|QL 体验。 我们将介绍改进 Kibana 中 ES|QL 编辑器…

DVWA靶场Brute Force (暴力破解) 漏洞low(低),medium(中等),high(高),impossible(不可能的)所有级别通关教程

目录 暴力破解low方法1方法2 mediumhighimpossible 暴力破解 暴力破解是一种尝试通过穷尽所有可能的选项来获取密码、密钥或其他安全凭证的攻击方法。它是一种简单但通常无效率的破解技术&#xff0c;适用于密码强度较弱的环境或当攻击者没有其他信息可供利用时。暴力破解的基…

svn分支相关操作(小乌龟操作版)

在开发工作中进行分支开发&#xff0c;涉及新建分支&#xff0c;分支切换&#xff0c;合并分支等 新建远程分支 右键选择branch/tagert按钮 命名分支的路径名称 点击确定后远程分支就会生成一个当时命名的文件夹&#xff08;开发分支&#xff09; 分支切换 一般在开发阶段&a…

大型ERP系统GL(总账管理)模块需求分析

主要介绍了GL系统的需求分析&#xff0c;包括系统概述、功能描述、帐薄管理、报表管理、期末处理、财务报表以及凭证的快速输入方式、可用性设计、保存、自动审核和打印等方面的内容。系统概述部分介绍了系统的功能结构和模块流程图。 功能描述部分详细描述了系统的基础资料和业…

macos 支持外接高分辩率显示器开源控制软件

macos 支持外接高分辩率显示器开源控制软件 软件&#xff08;app应用&#xff09;名&#xff1a;BetterDisplay 官方地址&#xff1a; https://github.com/waydabber/BetterDisplay

【Hackthebox 中英 Write-Up】Web Request | 分析 HTTP 请求和响应

欢迎来到我的writeup分享&#xff01;我希望大家不要只关注结果或答案&#xff0c;而是通过耐心阅读&#xff0c;尝试逆向工程理解背后的运作原理。在这里&#xff0c;你不仅能找到解题的思路&#xff0c;还能学到更多与Hack The Box等平台相关的技术和技巧&#xff0c;期待与你…

【密码学】基于 fastcoll 实现 MD5 碰撞快速生成(MD5碰撞)

【密码学】基于 fastcoll 实现 MD5 碰撞快速生成&#xff08;MD5碰撞&#xff09; 原理 MD5碰撞 MD5碰撞是指两个不同的输入数据通过MD5哈希算法生成相同的哈希值。这种情况会导致哈希值无法唯一标识原始数据&#xff0c;从而破坏哈希函数的完整性和安全性。 步骤 准备一个…

[pdf、epub]260道《软件方法》强化自测题业务建模需求分析共216页(202412更新)

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 260道《软件方法》强化自测题业务建模需求分析共216页&#xff08;202412更新&#xff09; 已上传到本CSDN账号的资源 如果下载不到&#xff0c;也可以访问以下链接&#xff1a; ht…

WireShark抓包学习

1.数据包结构解析 下图中&#xff0c;即为一条条数据包。 点击某一条数据包后可看见该数据的详细信息&#xff0c;包含了物理层、IP层和TCP协议的相关信息。 2.使用捕获过滤器筛选相应的数据包 想要抓包的话&#xff0c;首先第一步就需要使用捕获过滤器找到相应的数据包。WireS…

家用电器销售系统|Java|SSM|JSP|

【技术栈】 1⃣️&#xff1a;架构: B/S、MVC 2⃣️&#xff1a;系统环境&#xff1a;Windowsh/Mac 3⃣️&#xff1a;开发环境&#xff1a;IDEA、JDK1.8、Maven、Mysql5.7 4⃣️&#xff1a;技术栈&#xff1a;Java、Mysql、SSM、Mybatis-Plus、JSP、jquery,html 5⃣️数据库可…

vim里搜索关键字

vim是linux文本编辑器的命令&#xff0c;再vi的基础上做了功能增强 使用方法如下 1. / 关键字, 回车即可, 按n键查找关键字下一个位置 2.? 关键字, 回车即可, 按n键查找关键字下一个位置 3.示例

[JAVA]MyLogger

import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.logging.*;/*** 可以自已定义日志打印格式&#xff0c;这样看起来比较方便些**/ class MyFormatter extends Formatter {Overridepublic String format(LogRecord ar…

HuatuoGPT-o1:基于40K可验证医学问题的两阶段复杂推理增强框架,通过验证器引导和强化学习提升医学模型的推理能力

HuatuoGPT-o1&#xff1a;基于40K可验证医学问题的两阶段复杂推理增强框架&#xff0c;通过验证器引导和强化学习提升医学模型的推理能力 论文大纲理解1. 确认目标2. 分析过程3. 实现步骤4. 效果展示 解法拆解全流程提问俩阶段详细分析 论文&#xff1a;HuatuoGPT-o1, Towards …