搭建 OpenTiny 组件库的 Playground 指导手册

简介:基于 OpenTiny 组件库的 rendereless 无渲染组件架构 在 HAE 自研阶段,我们实现的数据双向绑定、面向对象的 JS 库、配置式开发的注册表等特性,随着前端技术的高速发展现在已经失去存在的意义,但是在 AUI 阶段探索的新思路新架构,经过大量的业务落地验证,再次推动前端领域的创新。TinyVue 继承了 HAE、AUI,OpenTiny 是一套企业级组件库解决方案,适配 PC 端 / 移动端等多端,涵盖 Vue2 / Vue3 / Angular 多技术栈,拥有主题配置系统 / 中后台模板 / CLI 命令行等效率提升工具,可帮助开发者高效开发 Web 应用。 阅读详情

1 知识背景

1.1 Vue框架

一个渐进式框架,它易学易用,性能出色,在国内推广最好的三大前端框架中,位居首位!

1.2 OpenTiny组件库

它在华为内部演进了9年,支撑了上千个项目的开发交付,它一套API同时支持Vue2和Vue3框架,有100 多个组件,6套主题,支持国际化能力,支持Vite和webpack环境的开发和构建!
它是华为云的2022年贡献给开源社区的一个新的Vue UI组件库,代码托管在GitHub: https://github.com/opentiny/tiny-vue, 欢迎大家来Star 和提Issue!
安装包发布在Npm 公共仓库,以及华为内部中心仓,遵从MIT开源协议,大家可以自由安装使用!
Opentiny组件库官网文档:https://opentiny.design/tiny-vue

image.png
图1 opentiny介绍

1.3 组件库的playgroud

Playground应用其实是一个实时的组件预览页面,比如Vue官网就提供了“Vue演练场”的功能,链接:https://play.vuejs.org/ ,它方便的提供了一个最小的Vue环境,能让用户尝试写一些Vue的代码,并查看实时预览结果!

建2.png
图2 Vue官方playground效果图

它支持多文件,支持 Import Map 引入第三方组件脚本,支持实时编辑代码,实时编译、预览以及代码分享!组件库的Playground就是要搭建一个应用页面,可以实时预览某个组件库的组件,可以通过它快速了解和尝试每一个组件!

Vue 官方开源的Playground的组件—@vue/repl,参考文档:https://github.com/vuejs/repl#readme 。

2 如何搭建OpenTiny组件库的playground的指导

今天的内容就是:搭建一个OpenTiny组件库的演练场。本次任务需要你熟悉前端,有Vue项目开发的经历才行。完成效果图如下:

建3.png
图3 挑战任务示意图

请参考以下步骤来完成此次任务:

2.1 建立新项目,并安装依赖包

安装nodejs 16+ , vscode等前端工具,然后使用 vite 来创建一个vue的javascript工程!

npm create vite@latest   

之后安装Playground的组件和opentiny/vue组件的依赖包

npm install  @vue/repl @opentiny/vue@3 

并务必参考opentiny/vue的安装文档, https://opentiny.design/tiny-vue/zh-CN/os-theme/docs/installation 进行配置项目。
目前大家已经有一个标准的vue项目了,经过npm intall, 之后,就可以npm run dev,启动并看到一个vue的示例工程。

建4.png
图四 vue的新工程初始页面

2.2 创建页面结构,引入所需要的变量

接下来删除掉 HelloWorld.vue ,在main.js中, 移除style.css引用,我们只在App.vue中完成全部功能!App.vue的页面结构如下:

<script setup>
import { reactive } from 'vue';
import { Repl, ReplStore, File } from '@vue/repl'
import CodeMirror from '@vue/repl/codemirror-editor'
import '@vue/repl/dist/style.css'

import { Switch as TinySwitch, ButtonGroup as TinyButtonGroup, Select as TinySelect, Option as TinyOption, Modal } from '@opentiny/vue'
import { IconShare as TinyIconShare } from "@opentiny/vue-icon"

// 将在此处补充逻辑代码

</script>

<template>

<div>将在此处补充模板代码</div>
 
</template>

<style>
 * {  box-sizing: border-box;}
.header {
  height: 36px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding-bottom: 6px;
  border-bottom: solid 1px #e1e1e1;
}
.vue-repl {  height: calc(100vh - 36px - 16px) !important;}
.header > div {  vertical-align: middle;}
.title {  font-size: 20px;}
.ml20 {  margin-left: 20px;}
</style>

2.3 开发顶部功能

应用的模板分为上下2部分,上面部分为标题Logo和一组选择功能以及分享按钮!下面部分就是一个<Repl> 组件。我们先开发顶部功能,它的<template>代码如下:

<div class="header">
    <div class="title">
      <img src="./assets/opentiny-logo.svg" /> <span>OpenTiny Vue 演练场</span>
    </div>
    <div>
      <span class="ml20">
        显示编译输出: <tiny-switch v-model="state.showCompileOutput" />
      </span>
      <span class="ml20">
        显示ImportMap: <tiny-switch v-model="state.showImportMap" />
      </span>
      <span class="ml20">
        布局方向: <tiny-button-group :data="state.layoutOptions" v-model="state.layout"></tiny-button-group>
      </span>
      <span class="ml20">
        版本: <tiny-select v-model="state.selectVersion" style="width:150px">
          <tiny-option v-for="item in state.versions" :key="item.value" :label="'opentiny/vue@' + item.value"
            :value="item.value">
          </tiny-option>
        </tiny-select>
      </span>
      <icon-share style="font-size: 16px;margin:0 20px; cursor: pointer;" />
    </div>
  </div>

模板里已经绑定了一组数据和方法,接下来,我们需要补充这些内容到<script>部分。

const iconShare = TinyIconShare()

const state = reactive({
  // repl 属性
  showCompileOutput: true,
  showImportMap: true,
  layout: 'horizon',
  layoutOptions: [{ value: 'horizon', text: "水平" }, { value: 'vertical', text: "垂直" }],
  // 版本切换
  versions: [{ value: "3.8.0" }, { value: "3.8.1" }, { value: "3.8.2" }, { value: "3.8.3" }, { value: "3.8.4" }],
  selectVersion: "3.8.4"
})

至此,我们应该能得到以下应用,顶部的显示开关和布局方向绑定了3个变量,但是版本选择和分享的功能还没有开发!

建5.png
图五 顶部功能效果图

★ 经过本步骤,我们学会了@opentiny/vue的组件的简单使用方法!

2.4 开发<Repl>组件,实现脚本预览

首先在模板中,引入Repl标签,并且绑定前面的3个变量以及ReplStore 变量。在 header 结构下面加入下面标签:

  <Repl :store="store" :editor="CodeMirror" :show-compile-output="state.showCompileOutput" :show-import-map="state.showImportMap"
    :previewOptions="state.previewOptions" :clear-console="false" :layout="state.layout"></Repl>

这里用到store变量和state.previewOptions, 所以在<script>部分,增加这些2处变量:

// repl组件需要store管理状态
const store = new ReplStore({
  showOutput: true,
  outputMode: "preview"
});

const state = reactive({
  // 加入这一句
    previewOptions: { headHTML: '' },
})

此时我们就得到一个可以联动的playground的原型了:在右边编写代码,在左边有实时预览,操作顶部的功能,区域有响应,界面如下:

建6.png

图六 组件效果图

★ 经过本步骤,我们学会了的组件使用方法!

2.5 实现切换版本

切换版本就是要切换repl组件引用的importMap的脚本,以实现动态切换@opentiny/vue的版本。 目前它发布了 3.8.0~3.8.4等5个版本!在<script>中,加以下脚本 :

const createImportMap = (version) => {
  return {
    imports: {
      "@opentiny/vue": `https://unpkg.com/@opentiny/vue@${version}/runtime/tiny-vue.mjs`,
      "@opentiny/vue-icon": `https://unpkg.com/@opentiny/vue@${version}/runtime/tiny-vue-icon.mjs`,
      "@opentiny/vue-locale": `https://unpkg.com/@opentiny/vue@${version}/runtime/tiny-vue-locale.mjs`,
      "@opentiny/vue-common": `https://unpkg.com/@opentiny/vue@${version}/runtime/tiny-vue-common.mjs`
    }
  }
};

function versionChange(version) {
  const importMap = createImportMap(version)
  store.setImportMap(importMap);
  state.previewOptions.headHTML = `<link rel="stylesheet" href="https://unpkg.com/@opentiny/vue-theme@${version}/index.css">`
}

我们编写了versionChange函数,把它绑定到前面模板的的 change事件上,这样下拉变化后,会通知store设置新的importMap地址!
现在切换版本后,通过开发者工具能看到,它会立即请求相应版本的@opentiny/vue的各个runtime脚本包。

★ 经过本步骤,我们学会了Tiny-Select的组件的事件绑定以及设置store的importMap变量!

2.6 实现代码分享

Repl组件是支持代码分享的,它的原理是:store对象把内部状态序列化为base64编码,把它拼在url的hash中分享给其它人。 当页面加载时,发现hash有内容,就知道这是store的状态,把它传给store,store内部会进行反序列化。
我们应用分享的时候,要记录组件库版本号和store状态,所以我们计划用hash同时保存版本和base64的值: 3.8.4|eNqIVV9p…

const hash = location.hash.slice(1)
// shareData数组如果有2项,则表明是分享链接,否则是非分享页面
const shareData = hash.split('|')

const store = new ReplStore({
  // 添加下面一行
  serializedState: shareData.length == 2 ? shareData[1] : '',
  showOutput: true,
  outputMode: "preview"
});

const state = reactive({
  // 修改下面这一行
  selectVersion: shareData.length == 2 ? shareData[0] : "3.8.4"
})

// 分享链接和非分享链接的逻辑不同,此处判断一下
if (shareData.length == 2) {
  versionChange(shareData[0])
} else {
  versionChange('3.8.4')
}

// 生成分享链接
function share() {
  const hash = store.serialize().slice(1)
  const shareUrl = location.origin + '#' + state.selectVersion + '|' + hash

  navigator.clipboard.writeText(shareUrl);
  Modal.alert(`已复制分享链接`, '分享成功')
}

把share函数绑定给模板中的分享图标的click事件,这样点击图标,就能把链接复制到剪切板中了, 再打开一个新页签,访问分享链接。
在分享链接中打开的新页面,当前hash就有一个很长的字符串了,这样shareData就解析到版本和store序列化的后值,所以把shareData[1]的内容赋值给store, 这样就实现了分享功能,试一下能不能成功吧!

★ 经过本步骤,我们学会了分享功能的设计以及store的序列化!

2.7 测试@opentiny/vue组件库

下面是一个@opentiny/vue组件库的使用示例,复制到应用窗口,并修改脚本,验证功能是否正确。点击分享按钮,并复制到其它页签,看是否分享内容了。

<script setup>
import { reactive } from "vue"
import { Button as TinyButton, Alert as TinyAlert, Numeric as TinyNumeric, Slider as TinySlider, Select as TinySelect, Option as TinyOption, Modal } from "@opentiny/vue"

const state = reactive({
  value: 42,
  selectValue: "",
  options: [
    { value: '选项1', label: '黄金糕' },
    { value: '选项2', label: '双皮奶' },
    { value: '选项3', label: '蚵仔煎' },
    { value: '选项4', label: '龙须面' },
    { value: '选项5', label: '北京烤鸭' }
  ],
})

function showValue() {
  Modal.alert(`当前值: ${state.value} \n 当前下拉框值: ${state.selectValue}`, '标题')
}
</script>
<template>
  <div class="mb20">Alert 演示</div>
  <div class="mb20">
    <tiny-alert description="type 为默认值 success"></tiny-alert>
    <tiny-alert type="error" description="type 为 error"></tiny-alert>
    <tiny-alert type="info" description="type 为 info"></tiny-alert>
    <tiny-alert type="warning" description="type 为 warning"></tiny-alert>
  </div>
  <div class="mb20">组件 演示</div>
  <div class="mb20">
    <tiny-numeric v-model="state.value"></tiny-numeric>
    <tiny-slider v-model="state.value"></tiny-slider>
    下拉选择框:<tiny-select v-model="state.selectValue" placeholder="请选择">
      <tiny-option v-for="item in state.options" :key="item.value" :label="item.label" :value="item.value"> </tiny-option>
    </tiny-select>
  </div>
  <div>
    <tiny-button @click="showValue">显示当前值</tiny-button>
  </div>
</template>

<style>
div .tiny-select {
  width: 200px;
}

.mb20 {
  margin-bottom: 20px;
}
</style>

关于 OpenTiny

OpenTiny 是一套华为云出品的企业级组件库解决方案,适配 PC 端 / 移动端等多端,涵盖 Vue2 / Vue3 / Angular 多技术栈,拥有主题配置系统 / 中后台模板 / CLI 命令行等效率提升工具,可帮助开发者高效开发 Web 应用。

核心亮点:

  1. 跨端跨框架:使用 Renderless 无渲染组件设计架构,实现了一套代码同时支持 Vue2 / Vue3,PC / Mobile 端,并支持函数级别的逻辑定制和全模板替换,灵活性好、二次开发能力强。
  2. 组件丰富:PC 端有80+组件,移动端有30+组件,包含高频组件 Table、Tree、Select 等,内置虚拟滚动,保证大数据场景下的流畅体验,除了业界常见组件之外,我们还提供了一些独有的特色组件,如:Split 面板分割器、IpAddress IP地址输入框、Calendar 日历、Crop 图片裁切等
  3. 配置式组件:组件支持模板式和配置式两种使用方式,适合低代码平台,目前团队已经将 OpenTiny 集成到内部的低代码平台,针对低码平台做了大量优化
  4. 周边生态齐全:提供了基于 Angular + TypeScript 的 TinyNG 组件库,提供包含 10+ 实用功能、20+ 典型页面的 TinyPro 中后台模板,提供覆盖前端开发全流程的 TinyCLI 工程化工具,提供强大的在线主题配置平台 TinyTheme

联系我们:

vue-playground:使用Vue 2在操场上进行项目 VueJs-游乐场 部署的项目: 项目设置 npm install 编译和热重装以进行开发 npm run serve 编译并最小化生产 npm run build 立即下载

相关推荐

vue-playground:Vue 2训练场

:red_exclamation_mark: Vue游乐场 :writing_hand: 培训Vuex,Vux和其他Vue库的地方。 这个仓库是做什么用的? 培训,教程,测试现场 只有小项目 更快地建立新项目 分行: :keycap_1: 大师-Clean Vue 2.6项目 :keycap_2: vuex方法-吸气剂,突变和作用的样本用法(Json占位符) :keycap_3: vuex-todoapp-使用vuex的待办事项应用程序。 生命部署: :keycap_4: vue-blog-具有Firebase的简单博客应用程序。 生命部署: :keycap_5: 先进的路由器-路由器参数简短培训 主要技术 Vue 2.6 插件 混合-Vuex 后端 混合-Firebase,Json占位符 款式 混合-Vuetify 代码 ES6,林特(airbnb),漂亮 剧本 :laptop: 命令 描述 npm run serve 打开本地服务器 npm run build 创建优化的版本 npm run lint 整

直播回顾|带你体验很实用的OpenTiny

本期直播主题是《解决开发者“兼容”难题,OpenTiny技术探索与应用解读》,华为云开源DTSE技术布道师曾令卡在本期直播中与开发者一起详细交流了OpenTiny组件库解决方案的核心优势和设计理念。并通过具体的实操给大家演示OpenTiny如何通过一行命令搭建中后台管理系统,同时也给大家演示了定制化的主题配置系统。

OpenTiny的博客 972

基于新张量核范数的TRPCA:多维数据低秩稀疏分解的理论与实践

本文深入探讨了基于新张量核范数的TRPCA(张量鲁棒主成分分析)技术。该技术通过t-product运算和新定义的张量核范数,能有效从多维数据(如视频、彩色图像)中分离低秩背景与稀疏前景/噪声。文章结合理论、核心算法(ADMM、t-SVT)及图像恢复、视频背景建模等实战案例,展示了其在处理复杂多维数据分解任务中的强大优势。

weixin_29173777的博客 269

OpenTiny 前端组件库正式开源啦!面向未来,为开发者而生

华为开发者大会2023(HDC.Cloud 2023)于7月7日-9日在东莞拉开帷幕,本届大会以“每一个开发者都了不起”为主题。OpenTiny作为前端企业级组件库解决方案,在本次大会上正式进行发布。

OpenTiny的博客 5415

PaddleOCR 3.x 最新版使用教程(2025)——从安装到实战身份证识别,一步到位!

本文针对PaddleOCR 3.x大版本更新带来的参数变化和兼容性问题,提供从环境配置到实际应用的全流程解决方案。

qq_58607032的博客 9787

ROS入门(一)——ROS安装(vmware16+ubuntu20.04+ROS-Noetic)

嵌套:ROS可以在Ubuntu上运行,Ubuntu在虚拟机Vmware中安装。 从 虚拟机vmware安装→ubuntu安装→ros安装,逐步介绍安装ROS环境的过程。整个过程是我一步步跟着各种博客安装实现的,亲测可行。 版本: Vmware :Vmware Workstation16 Ubuntu :20.04 ROS :Noetic 其中vmware直接载当前最新版本就好,而ubuntu的版本要注意一下。 在ROS官网(cn - ROS Wiki),我们进入到ROS安装的步骤界面,可以看..

Netceor的博客 9741

生成式 UI 藏大招!看似露营案例,实则电商集成 GenUI SDK 干货

要将 MCP 工具能力接入 AI 导购助手,需通过自定义 fetch 方法,处理大模型的工具调用请求、多轮交互及结果流式返回逻辑,确保工具调用过程流畅、符合电商业务场景。在目录下新建文件,编写自定义 fetch 逻辑。核心功能:自定义 fetch 方法,处理大模型工具调用、多轮交互及流式返回,对接 MCP 工具与 AI 助手baseURL?index?: numberid?

OpenTiny的博客 506

基于STM32电压检测和电流检测

1.可测量直流电压0~36V,适用于低电压电子电路中。 2.可测量直流电0~5A范围内,目前采用的ACS712测量量程为5A,该模块有多个量程,可测量到20A 3.实时功率监测 4.电池电量监测(采用电压压降方式计算)

weixin_44453694的博客 6万+

什么?你还不会 OpenTiny 跨框架组件库适配微前端?

本文通过实战操作梳理,带你手把手实现 TinyVue 跨框架组件库适配微前端~欢迎关注,点赞,评论~

OpenTiny的博客 1384

别再对着数据手册发愁了!用HFSS 2023 R2搞定ESP32-C3板载天线的阻抗匹配

本文详细介绍了如何利用HFSS 2023 R2进行ESP32-C3板载天线的阻抗匹配优化,解决实际PCB设计中常见的性能偏差问题。通过智能模型导入、科学参数扫描和量化优化流程,显著提升天线性能,适用于WIFI和蓝牙应用场景。

weixin_42523543的博客 448

Windows 11 安装、使用 Git:下载、安装、概念、命令、分支模型

本文详细介绍了在 Windows 11 系统上安装与使用 Git 的完整流程,涵盖从官方或国内镜像下载安装包、关键安装选项配置,到 Git 核心概念(如工作区、暂存区、分支、远程仓库等)的通俗解释。同时梳理了常用命令与五种主流 Git 分支模型(如 Git Flow、GitHub Flow 等),帮助开发者根据项目规模选择合适的工作流,是面向初学者与进阶用户的实用指南。

寒水馨 · 轻量级技术文档 · hanshuixin.org 2389

什么是OpenTiny?

在具体实践中,开发者可以基于 OpenTiny 快速构建企业级的前端项目,例如模仿华为云的官方界面,使用 TinyEngine 低代码引擎进行页面布局、表单组件、按钮组件等开发,并通过主题配置系统快速调整页面样式。:一个丰富的组件库,支持 Vue2、Vue3,适配 PC 和移动端,拥有 100 多个组件和 6 套主题,支持国际化,适用于多种开发环境和项目需求。:一个灵活的低代码开发平台,支持在线实时构建和二次开发,允许开发者快速定制低代码平台,适用于资源编排、服务端渲染、模型驱动等多种场景。

软件行业技术文化交流。 1528

ROCm rocr-libhsakmt分析系列9-3: queue的内核创建流程

KFD队列是用户空间与GPU通信的核心机制,通过多种队列类型(计算、DMA、调试等)实现命令流管理。核心数据结构包括描述队列属性的queue_properties、内核调度对象queue、进程级管理器process_queue_manager,以及跨进程设备的qcm_process_device等。这些结构通过ring buffer、doorbell机制和MQD硬件描述符协同工作,支持队列全生命周期管理、资源调度、异常处理和上下文保存/恢复功能。

图形/计算GPU的驱动与虚拟化技术分享园地 2130

速看!盘点这一年 OpenTiny 都在做什么?

叮,这里有一份 OpenTiny 的年终总结等你查收,本文主要介绍了OpenTiny 2023年的那些事~

OpenTiny的博客 1343

Python在振动信号处理中的应用(一):振动信号消除多项式趋势项

文章目录一、概述二、最小二乘法去除趋势项原理三、python模块介绍3.1 scikitlearn简介(1)转化器(Transformer)(2)估计器(Estimator)3.2 线性回归LinearRegression3.3 多项式PolynomialFeatures3.4 工作流Pipeline四、python代码实现4.1 构造模拟信号4.2 编写去除趋势项主代码4.3 展示算法效果五、TIPS 一、概述   在振动测试过程中,传感器或采集设备由于自身性能问题或受环境干扰(如温度、供电等影响),容易

白银时代的博客 8578

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

听说过OpenTiny开源项目吗?什么场景都能用

是华为云出品的开源项目,号称是跨端跨框架的一站式解决方案,让我来一探究竟!OpenTiny目前开放了开发相关的,以及衍生生态产品。目前主流的前端框架比如ElementUI、antDesign都对Vue版本进行了区分,比如ElementUI适用于Vue2,ElementPlus适用于Vue3;ant-design-vue 1.x适用于Vue2,ant-design-vue 2.x以上适用于Vue3;

weixin_38593969的博客 853

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

OpenTiny——提升前端开发效率的利器

OpenTiny 孵化自华为云和流程IT,经过九年的持续打磨,服务于华为内外部上千个项目,千锤百炼,是一个稳定可靠的组件库。另一方面,技术是需要不断探索的,我们希望携手社区开发者一起探索新技术,不断扩展OpenTiny的边界,让更多开发者收益,也让我们的产品精益求精。当然目前业界组件库有很多,最广为人知的阿里的Ant Design,饿了么的ElementUI,谷歌的Material UI等等,各家有各自的审美和设计~相信你也可能内心有个大大的问号,这个新组件库真的有说的这么好用吗?

LLI025的博客 883

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

OpenTiny Vue 组件库实现主题配置和UX交互规范自定义

本文向我们介绍了如何在OpenTiny Vue组件库中进行UX规范的定制修改。学会使用该方法后,开发者可以更精准地控制或修改用户体验规范的范围,提高开发效率,同时降低维护成本和代码复杂度。

OpenTiny的博客 666

Web前端组件库OpenTiny项目如何使用?

​ 目前华为云出品的开源项目OpenTiny其中包含两个组件库项目一个是TinyVue还有一个是TinyNG当然还包含拥有主题配置系统/中后台模板/TinyCli命令行等效率提升工具

ihhhh1的博客 590

最近风很大的 OpenTiny 有什么功能?组件库?那是什么东西?框架又是什么?

先说结论,主要包括两个前端组件库,包括 Angular 框架和 Vue 框架两种。或许有一些不了解前端的朋友就会问了,,这两个?笔者理解,当我们在手机或电脑屏幕上看到丰富美丽的画面时,或者是我们需要在网页中提交某个表格或者信息产生交互动作时,这些画面的背后就是多个组件结合而成的效果。比如头像组件使我们可以设置自己的专属形象,比如新手引导组件又会在最初带领我们探索某个事物,等等诸如此类的场景。那么框架又是什么呢?引用维基百科中的解释,软件框架是指一种抽象形式,它提供了一个。

LLI025的博客 591

华为开源项目OpenTiny的TinyVue组件库适用于哪些地方?

组件库目前是有80+的组件,1500+组件API接口,同时其中Table、Tree、Select等高频组件均内置虚拟滚动,在10万大数据场景下保持丝滑体验。所以其实相对于其他组件库的话,性能还是非常高的。第三个就是可以支持大屏系统,提供多种页面模式,轻松点击即可生成页面结构,同时不断添加新的图表组件,包含A-Charts等,只需要简单拖拽,少量设置即可完成页面搭建。第四个就是可以支持工业制造系统,可支持多种页面布局,通过可视化图表集成控制工作台各个场景业务,让使用者直观了解业务数据情况,进行智能分析。

ihhhh1的博客 1517

从0到1实现 OpenTiny 组件库跨框架技术

本文主要讲述OpenTiny组件库解决方案的核心优势和设计理念。

华为云官方博客 981

OpenTiny开源组件库最新消息

OpenTiny也将在这次大会上正式发布,之前有了解过这个项目,是今年新开源的一个组件库产品,其中包含TinyVue和TinyNG两个组件库,同时涵盖Vue和Angluar两套框架,一套代码同时支持vue2/vue3两个版本。提供中后台模板,主题配置系统,CLI脚手架工具,帮助开发者高效开发web应用。据悉,本次大会将围绕AI、大数据、数据库、PaaS、aPaaS、媒体服务、云原生、安全、物联网、区块链、开源等各个领域的技术热点、最佳实践以及发展趋势等进行深入解读和分享。

ihhhh1的博客 419

OpenTiny 推出开源低代码引擎 TinyEngine 在 KubeCon China 2023 蓄力云原生生态

TinyEngine 低代码引擎作为开发低代码平台的核心基座,为低码平台开发人员提供重要驱动力,使能开发者定制低码平台。

OpenTiny的博客 649

开源产品 OpenTiny 有什么优势?

OpenTiny 孵化自华为云和流程 IT,经过九年的持续打磨,服务于华为内外部上千个项目,千锤百炼,是一个稳定可靠的组件库。另一方面,技术是需要不断探索的,我们希望携手社区开发者一起探索新技术,不断扩展 OpenTiny 的边界,让更多开发者收益,也让我们的产品精益求精。当然目前业界组件库有很多,最广为人知的阿里的 Ant Design,饿了么的 ElementUI,谷歌的 Material UI 等等,各家有各自的审美和设计~相信你也可能内心有个大大的问号,这个新组件库真的有说的这么好用吗?

happyleyouyou的专栏 743

GaoNeng:我是如何为OpenTiny贡献新组件的?

本文主要介绍了HSV,HSL,RGB色彩空间及其数学表达方法,并分析了SV与二维XY的互相转换原理,最后以 ColorPicker 组件为例子,总结了 TinyVue 组件开发的流程。

kagol的博客 216
上一篇: 版本更新|OpenTiny Vue 发布了 v3.9.0 。
下一篇: 你了解Vue3 组合式API吗?
OpenTiny社区
博客等级 码龄4年 1540粉丝 266原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值