当前位置: 首页 > news >正文

common-intellisense:助力TinyVue 组件书写体验更丝滑

本文由体验技术团队Kagol原创~
前两天,common-intellisense 开源项目的作者 Simon-He95 在 VueConf 2024 群里发了一个重磅消息:

common-intellisense 支持 TinyVue 组件库啦!

在这里插入图片描述

common-intellisense 插件能够提供超级强大的智能提示功能,包含属性(props)、事件(events)、插槽(slots)以及对应的注释和类型,实例上的方法(methods)等等,支持多个UI库,让你的开发效率更上一层楼。

TinyVue 是一套跨端、跨框架的企业级 UI 组件库,支持 Vue 2 和 Vue 3,支持 PC 端和移动端,包含 100 多个简洁、易用、功能强大的组件,内置 4 套精美主题。

有了 common-intellisense 的加持,我们一起来看看 TinyVue 组件的使用体验如何吧!

没有使用 common-intellisense 插件

假如你已经有了一个 Vite 工程,可通过以下方式安装 TinyVue 组件库:

npm i @opentiny/vue

然后直接在App.vue中使用:

<script setup lang="ts">
import { Alert as TinyAlert } from '@opentiny/vue'
</script><template><tiny-alert description="这是一条提示信息" size="large"><template #title>这是一个标题</template></tiny-alert>
</template>

组件效果如下:
在这里插入图片描述

组件 UI 看着挺好看的,但是开发体验却不是太好。

首先鼠标移到组件名称上,只有一些不太友好的 TypeScript 类型提示。

在这里插入图片描述

在组件上配置 props 名称,也不会自动提示。

在这里插入图片描述

接下来我们安装下 common-intellisense 插件试试看。

使用 common-intellisense 插件

确保你使用的 VSCode 代码编辑器,使用 Ctrl + Shift + X 快捷键,呼起“扩展”抽屉,输入 common-intellisense 关键字找到 common-intellisense 插件,点击安装。

在这里插入图片描述

组件 API 表格提示

这时我们将鼠标移到组件名称上,会看到完整的 API 表格提示。

在这里插入图片描述

组件 props 提示和模拟搜索(props)

我们尝试在组件名称后面输入一个空格,会提示组件的 props 列表。

在这里插入图片描述

边输入字符,可以边过滤 props,比如输入 c,则只显示 center / closablec 打头的属性。

在这里插入图片描述

还支持模糊搜索,即使忘记属性怎么拼写也没关系,依然会有提示,比如输入 detio,也能提示出 description 属性。

在这里插入图片描述

值得一提的是,不仅支持 props 名称的过滤,还支持 props 描述的过滤,比如输入large,可以提示出 title 属性,因此 title 属性的描述中有 large 关键词。

在这里插入图片描述

props值的提示

props 的提示列表,可以支持方向键选择组件 props,比如输入 size 出现了 size / title 两个属性,我选择 size

在这里插入图片描述

选中 props 之后,按 Enter 回车键会提示可选的 props 值,Alert 组件的 size 有两个可选值:normal / large

在这里插入图片描述

将鼠标移到属性名称上,也可以提示该属性的描述信息。

在这里插入图片描述

组件事件提示(events)

输入 @ 符号,会提示组件的事件列表。

在这里插入图片描述

事件也支持事件描述内容的搜索。

在这里插入图片描述

组件实例方法的提示(methods)

除了组件 props / events 可以提示之外,common-intellisense 插件还支持组件实例方法的提示。

以Tree组件为例:

<script setup lang="ts">
import { ref } from 'vue'
import { Tree as TinyTree, Button as TinyButton } from '@opentiny/vue'const treeData = ref([{id: '1',label: '数据 1',children: [{ id: '1-1', label: '数据 1-1', children: [{ id: '1-1-1', label: '数据 1-1-1' }] },{ id: '1-2', label: '数据 1-2' }]},{id: '2',label: '数据 2',children: [{ id: '2-1', label: '数据 2-1' },{ id: '2-2', label: '数据 2-2' }]},{id: '3',label: '数据 3',children: [{ id: '3-1', label: '数据 3-1' }]}
])// tree 组件实例
const treeRef = ref()// 在当前选中节点下插入子节点
const addChildNode = () => {const currentNodeId = treeRef.value.getCurrentNode().idconst currentNode = treeRef.value.getNode(currentNodeId)treeRef.value.addNode(currentNode)
}// 删除选中节点
const deleteNode = () => {const currentNodeId = treeRef.value.getCurrentNode().idtreeRef.value.remove(currentNodeId)
}
</script><template><tiny-button @click="addChildNode" size="mini">插入子节点</tiny-button><tiny-button @click="deleteNode" size="mini">删除节点</tiny-button><tiny-tree :data="treeData" node-key="id" ref="treeRef" default-expand-all></tiny-tree>
</template>

输入 treeRef.value. 时,会提示 Tree 组件暴露出来的方法列表。

在这里插入图片描述

也支持方法的过滤,比如输入 re 会过滤出 remove 方法。
在这里插入图片描述

效果如下:

在这里插入图片描述

组件插槽提示(slots)

在组件上方有一行小字,提示了当前组件有哪些插槽可以配置。

在这里插入图片描述

对于已经配置过的插槽,也会进行隐藏,比如 title 插槽已经配置过,就不再显示在提示中。

在这里插入图片描述

是不是非常丝滑,有了这个插件,几乎不用再去网站上查询组件用法,减少来回切换成本,让我们的开发工作更加聚焦、更加高效,心动不如行动起来!

欢迎朋友们体验和反馈:

  • TinyVue
  • common-intellisense

关于OpenTiny

在这里插入图片描述

OpenTiny 是一套企业级 Web 前端开发解决方案,提供跨端、跨框架、跨版本的 TinyVue 组件库,包含基于 Angular+TypeScript 的 TinyNG 组件库,拥有灵活扩展的低代码引擎 TinyEngine,具备主题配置系统TinyTheme / 中后台模板 TinyPro/ TinyCLI 命令行等丰富的效率提升工具,可帮助开发者高效开发 Web 应用。

欢迎加入 OpenTiny 开源社区。添加微信小助手:opentiny-official 一起参与交流前端技术~
OpenTiny 官网:https://opentiny.design/
OpenTiny 代码仓库:https://github.com/opentiny/
TinyVue 源码:https://github.com/opentiny/tiny-vue
TinyEngine 源码: https://github.com/opentiny/tiny-engine
欢迎进入代码仓库 Star🌟TinyEngine、TinyVue、TinyNG、TinyCLI~ 如果你也想要共建,可以进入代码仓库,找到 good first issue标签,一起参与开源贡献~

相关文章:

common-intellisense:助力TinyVue 组件书写体验更丝滑

本文由体验技术团队Kagol原创~ 前两天&#xff0c;common-intellisense 开源项目的作者 Simon-He95 在 VueConf 2024 群里发了一个重磅消息&#xff1a; common-intellisense 支持 TinyVue 组件库啦&#xff01; common-intellisense 插件能够提供超级强大的智能提示功能&…...

图片在线压缩有效方法详解,分享7款最佳图片压缩工具免费(全新)

当您的系统中图片数量不断增加&#xff0c;却无法删除时&#xff0c;那么就需要通过图片压缩来解决您的问题。随着图片文件的增大&#xff0c;高分辨率图片占据了大量存储空间。而此时系统中的存储空间也开始变得不够用&#xff0c;无法跟上高质量图片的增长。因此&#xff0c;…...

electron安装及快速创建

electron安装及快速创建 electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 详细内容见官网&#xff1a;https://www.electronjs.org/zh/docs/latest/。 今天来记录下练习中的安装过程和hello world的创建。 创建项目文件夹&#xff0c;并执行npm 初始化命…...

需要消化的知识点

需要消化 消灭清单 如何自定义一个Interceptor拦截器&#xff1f; 后端开发可以用上的前端技巧 10个堪称神器的 Java 学习网站. 【前端胖头鱼】11 chrome高级调试技巧&#xff0c;学会效率直接提升666% 【前端胖头鱼】10个我经常逛的“小网站” 【前端劝退师lv-6】Chrome D…...

2024年7月25日(Git gitlab以及分支管理 )

分布式版本控制系统 一、Git概述 Git 是一种分布式版本控制系统,用于跟踪和管理代码的变更。它是由Linus Torvalds创建的,最 初被设计用于Linux内核的开发。Git允许开发人员跟踪和管理代码的版本,并且可以在不同的开 发人员之间进行协作。 Github 用的就是Git系统来管理它们的…...

pdf格式过大怎么样变小 pdf文件过大如何缩小上传 超实用的简单方法

面对体积庞大的 PDF 文件&#xff0c;我们常常需要寻找有效的方法来缩减其大小。这不仅能够优化存储空间&#xff0c;还能提升文件的传输和打开速度。PDF文件以其稳定性和跨平台兼容性成为工作和学习中的重要文件格式。然而&#xff0c;当我们需要通过邮件发送或上传大文件时&a…...

前端文件下载word乱码问题

记录一次word下载乱码问题&#xff1a; 用的请求是axios库&#xff0c;然后用Blob去接收二进制文件 思路&#xff1a;现在的解决办法有以下几种&#xff0c;看看是对应哪种&#xff0c;可以尝试解决 1.将响应类型设为blob&#xff0c;这也是最重要的&#xff0c;如果没有解决…...

repo中的default.xml文件project name为什么一样?

文章目录 default.xml文件介绍为什么 name 是一样的&#xff0c;path 不一样&#xff1f;总结 default.xml文件介绍 在 repo 工具的 default.xml 文件中&#xff0c;定义了多个 project 元素&#xff0c;每个元素都代表一个 Git 仓库。 XML 定义了多个不同的 project 元素&…...

<section id=“nice“ data-tool=“mdnice编辑器“ data-webs

大模型日报 2024-07-24 大模型资讯 Meta发布最大Llama 3 AI模型&#xff0c;语言和数学能力提升 摘要: Meta公司发布了其迄今为止最大的Llama 3人工智能模型。该模型主要免费提供&#xff0c;具备多语言处理能力&#xff0c;并在语言和数学方面表现出显著提升。 Meta发布最强AI…...

作业7.26~28

全双工&#xff1a; 通信双方 既可以发送&#xff0c;也可以接收数据 1. 利用多线程 或者 多进程&#xff0c; 实现TCP服务器 和 客户端的全双工通信 思路&#xff1a; 服务器和客户端&#xff0c; 在建立通信以后&#xff0c;可以创建线程&#xff0c;在线程编写另一个功能代…...

自定义webIpad证件相机(webRTC)

该技术方案可用于各浏览器自定义相机开发 相机UI&#xff08;index.html&#xff09; <!DOCTYPE html> <html lang"zh" prew"-1"><head><meta charset"UTF-8"><meta name"viewport"content"user-sc…...

GO发票真伪批量查验方法、数电票查验接口

“教”给机器标注数据的正确率就决定了人工智能判断的正确率。翔云人工智能开放平台的OCR产品经过我们的开发人员精心调“教”&#xff0c;识别率高、识别速度快。 发票&#xff0c;是发生的成本、费用或收入的原始凭证。于公司来说&#xff0c;发票主要是公司做账的依据&…...

【Go系列】Go的UI框架Fyne

前言 总有人说Go语言是一门后端编程语言。 Go虽然能够很好地处理后端开发&#xff0c;但是者不代表它没有UI库&#xff0c;不能做GUI&#xff0c;我们一起来看看Go怎么来画UI吧。 正文 Go语言由于其简洁的语法、高效的性能和跨平台的编译能力&#xff0c;非常适合用于开发GUI…...

.NET MAUI:跨平台开发的未来

常用资源 &#xff08;1&#xff09;.NET MAUI8构建应用文档。 Build your first .NET MAUI app - .NET MAUI | Microsoft Learn 一、什么是 .NET MAUI&#xff1f; .NET Multi-platform App UI (.NET MAUI) 是微软推出的一款跨平台开发框架。作为 Xamarin.Forms 的下一代产…...

VSCode切换默认终端

我的VSCode默认终端为PowerShell&#xff0c;每次新建都会自动打开PowerShell。但是我想让每次都变为cmd&#xff0c;也就是Command Prompt 更改默认终端的操作方法如下&#xff1a; 键盘调出命令面板&#xff08;CtrlShiftP&#xff09;中,输入Terminal: Select Default Prof…...

卫星观测叶绿素的相反信号

Contrasted Trends in Chlorophyll-a Satellite Products 运用卫星产品研究Chl的长时间序列变化时需要注意 Introduction &#xff08;1&#xff09;研究叶绿素的长期变化&#xff0c;需要至少40年的长时间序列&#xff1b; &#xff08;2&#xff09;Tian and Zhang 2023报告…...

2024年最新NVIDIA T4价格表及行业趋势!

英伟达&#xff08;NVIDIA&#xff09;作为目前全球T0级别的GPU制造商&#xff0c;其T4系列显卡以其卓越的计算性能和能效比&#xff0c;在数据中心、云计算及AI领域占据重要地位。 一、NVIDIA T4价格表概览 在探讨NVIDIA T4显卡的价格时&#xff0c;我们需要从直接购买和租赁…...

HTML + CSS编程规范

编程规范 HTML CSS 命名规范 HTML CSS 命名规范 1. 命名需要是具备语义性的单词&#xff0c;不能用 数字 拼音 数字,符号开头正确示范 &#xff1a; wrap description title content错误示范 : aaaa a1 $we 4tdds 2. 命名需要多个单词连接的情况下, 标记语言中可以使用 …...

机器学习之人脸识别-使用 scikit-learn 和人工神经网络进行高效人脸识别

文章摘要 本文将介绍如何使用 Python 的 scikit-learn 库和人工神经网络&#xff08;ANN&#xff09;来识别人脸。我们将使用 LFW 数据集&#xff08;Labeled Faces in the Wild&#xff09;&#xff0c;这是一个广泛用于人脸识别基准测试的大型人脸数据库。我们将展示如何准备…...

【虚拟化】KVM概念和架构

目录 一、什么是KVM&#xff1f; 二、KVM的功能 2.1 主要的功能 2.2 其它功能 三、KVM核心组件及作用 四、KVM与VMware的优势 五、KVM架构 六、qemu介绍 七、创建虚拟机流程 一、什么是KVM&#xff1f; Kernel-based Virtual Machine的简称&#xff0c;KVM 是基于虚拟…...

从LDF文件看LIN调度:为什么说‘可预测性’是汽车低端总线的灵魂?

从LDF文件看LIN调度&#xff1a;为什么说‘可预测性’是汽车低端总线的灵魂&#xff1f; 当你按下车窗按钮时&#xff0c;那个瞬间发生的升降动作背后&#xff0c;隐藏着一套精密的通信协议在默默运作。不同于高端车载网络CAN总线的复杂仲裁机制&#xff0c;LIN总线以其独特的&…...

腾讯云GPU服务器上,手把手教你5分钟搞定Isaac Sim 5.0环境(附VNC黑屏自救指南)

腾讯云GPU服务器5分钟极速部署Isaac Sim 5.0全攻略 在机器人仿真与AI训练领域&#xff0c;NVIDIA Isaac Sim已成为行业标杆工具。但许多开发者在云端部署时&#xff0c;往往耗费数小时甚至数天时间卡在环境配置环节。本文将基于腾讯云GPU服务器&#xff0c;分享一套经过实战验证…...

InternGPT多模态对话实战:如何用Husky模型实现93.89% GPT-4质量

InternGPT多模态对话实战&#xff1a;如何用Husky模型实现93.89% GPT-4质量 【免费下载链接】InternGPT InternGPT (iGPT) is an open source demo platform where you can easily showcase your AI models. Now it supports DragGAN, ChatGPT, ImageBind, multimodal chat lik…...

Python 数据统计分析全攻略:从基础到实战,一文掌握常用方法

在数据分析、机器学习、业务报表开发等场景中&#xff0c;数据统计分析是核心基础环节。Python 凭借丰富的第三方库&#xff0c;成为数据统计分析的首选工具。本文将系统梳理 Python 中数据统计分析的常用方法、核心库、实战代码&#xff0c;从基础统计量到高级分析&#xff0c…...

手把手教你用哥斯拉Godzilla搭建渗透测试环境(附常见错误解决方案)

实战指南&#xff1a;Windows环境下渗透测试工具的高效配置与排错 在网络安全领域&#xff0c;渗透测试工具的正确配置往往是技术实践的第一步门槛。对于刚接触安全测试的新手来说&#xff0c;从零开始搭建环境不仅需要清晰的步骤指引&#xff0c;更需要理解每个环节可能出现的…...

CHORD-X与Matlab仿真联动:战术场景生成与效果评估

CHORD-X与Matlab仿真联动&#xff1a;战术场景生成与效果评估 最近在做一个挺有意思的项目&#xff0c;需要验证一个智能感知系统在复杂动态场景下的表现。这个系统叫CHORD-X&#xff0c;它专门处理视频流&#xff0c;能识别和追踪画面里的多个目标。但问题来了&#xff0c;我…...

告别纯手工标注!用微调后的SAM2+ISAT,实现裂缝标注效率翻倍(保姆级避坑指南)

基于SAM2与ISAT的裂缝智能标注实战&#xff1a;从零构建高效半自动化工作流 想象一下这样的场景&#xff1a;你面前堆叠着数千张道路裂缝检测图像&#xff0c;每张都需要精确标注裂缝区域。传统手工标注不仅耗时费力&#xff0c;还容易因疲劳导致标注质量下降。这正是计算机视觉…...

Go Context 生命周期与取消信号传播

Go Context 生命周期与取消信号传播 在Go语言中&#xff0c;Context是控制并发任务生命周期的核心工具&#xff0c;它通过树状结构管理取消信号、超时和截止时间&#xff0c;确保资源高效回收与任务协同。无论是微服务调用、数据库查询还是HTTP请求&#xff0c;Context都能优雅…...

破解金融分析复杂性:TradingAgents-CN多智能体协作框架的实战价值与落地指南

破解金融分析复杂性&#xff1a;TradingAgents-CN多智能体协作框架的实战价值与落地指南 【免费下载链接】TradingAgents-CN 基于多智能体LLM的中文金融交易框架 - TradingAgents中文增强版 项目地址: https://gitcode.com/GitHub_Trending/tr/TradingAgents-CN 价值定位…...

从海报生成实战出发:深度解析Canvas文本绘制的那些“坑”与高效解决方案

从海报生成实战出发&#xff1a;深度解析Canvas文本绘制的那些“坑”与高效解决方案 在数字化营销盛行的今天&#xff0c;一张精美的海报往往能成为内容传播的"门面担当"。无论是文章分享、活动推广还是品牌展示&#xff0c;视觉化呈现的效果直接影响用户点击意愿。…...