探索TinyEngine:低代码引擎加速Web应用开发的奇妙之旅【OpenTiny】

举报
皮牙子抓饭 发表于 2024/08/24 00:41:46 2024/08/24
【摘要】 探索TinyEngine:低代码引擎加速Web应用开发的奇妙之旅在快节奏的软件开发世界中,效率是每一个团队都追求的目标。随着前端技术的飞速发展,从传统的全手写代码到低代码平台的兴起,我们看到了一个更加高效、易用的开发时代的到来。今天,我将带大家走进OpenTiny这套企业级Web前端开发解决方案中的核心组件——TinyEngine低代码引擎,分享我的学习过程和体验,看看它是如何助力我们高效开...

探索TinyEngine:低代码引擎加速Web应用开发的奇妙之旅

在快节奏的软件开发世界中,效率是每一个团队都追求的目标。随着前端技术的飞速发展,从传统的全手写代码到低代码平台的兴起,我们看到了一个更加高效、易用的开发时代的到来。今天,我将带大家走进OpenTiny这套企业级Web前端开发解决方案中的核心组件——TinyEngine低代码引擎,分享我的学习过程和体验,看看它是如何助力我们高效开发Web应用的。

一、初识TinyEngine:低代码的魅力

TinyEngine作为OpenTiny解决方案中的低代码引擎,其设计初衷在于通过图形化界面和自动化工具,大幅度降低前端开发的复杂度,提高开发效率。它不仅仅是一个工具,更是一种全新的开发理念和流程变革。通过TinyEngine,开发者可以快速搭建应用界面,配置业务逻辑,而无需深入每一个技术细节,从而专注于业务逻辑的实现和创新。

二、学习环境搭建

要开始TinyEngine的学习之旅,首先需要搭建一个合适的学习环境。由于TinyEngine是OpenTiny的一部分,我们通常需要下载并安装OpenTiny的完整包,或者至少是其开发环境。这通常包括:

  • Node.js:确保你的开发环境中安装了最新版本的Node.js,以便运行TinyEngine和OpenTiny的其他组件。
  • TinyCLI:TinyCLI是OpenTiny提供的命令行工具,用于快速创建项目、管理依赖等。通过TinyCLI,我们可以轻松地初始化一个包含TinyEngine的项目。
  • IDE(如VSCode):选择一个你熟悉的集成开发环境,并安装必要的插件,如Vue、Angular等支持插件,以优化开发体验。

三、项目创建与初探

使用TinyCLI创建一个新的项目,通常只需几行命令即可完成。在创建过程中,你可以选择是否包含TinyEngine,以及是否需要特定的模板(如中后台模板TinyPro)。

tinycli create my-project --engine=tinyengine --template=tinypro

项目创建完成后,你将得到一个包含TinyEngine基础结构和示例代码的项目目录。此时,你可以开始探索TinyEngine的核心功能了。


1.环境变量清单

tiny-engine-webservice 环境变量配置

变量名称

说明

GIT_USERNAME

应用发布时具备push代码权限的代码仓用户名

GIT_EMAIL

应用发布时具备push代码权限的代码仓的用户邮箱

GIT_USER_TOKEN

应用发布时具备push代码权限的代码仓token

GIT_REPO

应用发布时的代码仓地址

GIT_BRANCH

应用发布时默认提交代码的分支

DATA_CENTER_URL

数据中心地址,例如: https://www.mydatacenter.com

PROXY_SERVER

选择性设置,如果自己的服务器需要代理服务才能访问外部数据,需要配置代理服务的地址

OPENAI_API_KEY

AI接口 openai的 API key

WENXIN_ACCESS_TOKEN

AI接口 文心一言的access_token (30天一更新)

NPM_AUTH_TOKEN

npmjs.com 的用户具备publish权限的authToken, 用户发布区块

以下为参考环境变量配置项:

obs 配置

此次开源代码提供了搭配华为云obs的使用示例:

变量名称

说明

OBS_AK

obs AK 本示例代码使用华为云obs,如果使用其他云服务产品请搜索相关代码修改逻辑适配

OBS_SK

obs SK 本示例代码使用华为云obs,如果使用其他云服务产品请搜索相关代码修改逻辑适配

OBS_ACCESS_URL

obs的资源访问url,例如:https://tinyengine.obs.cn-north-4.myhuaweicloud.com/somepath/somefile.tar.gz

OBS_SERVICE_URL

使用obs sdk时传入的obs服务链接参数,例如:https://obs.cn-north-4.myhuaweicloud.com

RabbitMQ 配置

此次开源代码提供了连接RabbitMQ任务队列的使用示例(开源代码中RabbitMQ 插件处于关闭状态,如果需要请开启。 同时恢复项目根目录下app.ts中被注释的代码):

变量名称

说明

MQ_IP

任务队列服务ip地址

MQ_PORT

任务队列服务端口,例如 5671

MQ_USERNAME

任务队列服务用户名

MQ_PASSWORD

任务队列服务密码

如果涉及到自身服务的CI/CD 部署 或容器化部署请根据自身所属产品、工具的特点按照上面的清单配置环境变量;

tiny-engine-data-center 环境变量配置

变量名称

说明

MYSQL_HOST

mysql服务ip地址

MYSQL_PORT

mysql服务端口,默认 3306

MYSQL_DBNAME

mysql 服务数据库名称

MYSQL_PASSWORD

mysql服务密码

如果使用了redis, 配置示例如下:

变量名称

说明

REDIS_HOST

redis服务ip地址

REDIS_PORT

redis服务端口,默认 6380

RADIS_PASSWORD

redis服务密码

REDIS_DB

redis连接的存储区编号, 默认 2

2.本地运行时配置方式:


vi ~/.bashrc

export MQ_IP=192.168.0.11
export MQ_PORT=5671
# 等等环境变量
#设置完后,重新打开命令行或在当前命令行执行以下命令,让设置的环境变量生效。(git bash中设置的环境变量无法适用于powershell 和cmd)

source ~/.bashrc

3.启动服务tiny-engine-data-center


npm install --ignore-engines
npm run build
npm run dev


4.启动服务tiny-engine-webservice


npm install --ignore-engines
npm run dev

四、TinyEngine核心功能探索

1. 图形化界面设计

TinyEngine提供了强大的图形化界面设计工具,允许开发者通过拖拽组件、设置属性等方式快速构建页面。这些组件可以是TinyVue或TinyNG中的预定义组件,也可以是自定义组件。

2. 数据绑定与逻辑配置

除了界面设计,TinyEngine还支持数据绑定和逻辑配置。开发者可以通过图形化界面设置组件间的数据流向,以及配置业务逻辑,如事件处理、表单验证等。这些配置大多通过简单的配置表单完成,无需编写大量代码。

3. 主题与样式定制

TinyTheme系统让主题和样式的定制变得简单。开发者可以通过修改主题配置文件,快速切换整个应用的视觉风格。同时,TinyEngine也支持CSS覆盖和组件级别的样式定制,满足更个性化的需求。

4. 插件与扩展

TinyEngine支持插件机制,允许开发者或第三方开发插件来扩展其功能。这些插件可以是新的组件、数据源、逻辑处理模块等,为TinyEngine带来无限可能。

五、实战演练与心得

通过几个简单的实战项目,我深刻体会到了TinyEngine带来的效率提升。从界面设计到逻辑实现,整个过程几乎都在图形化界面中完成,大大减少了代码编写量。同时,TinyEngine的灵活性和可扩展性也让我对未来的项目开发充满了信心。

六、结语

TinyEngine作为OpenTiny解决方案中的低代码引擎,以其高效、易用、灵活的特点,为前端开发带来了全新的体验。通过本次学习,我不仅掌握了TinyEngine的基本使用方法,更深刻理解了低代码平台在提升开发效率方面的巨大潜力。我相信,在未来的项目开发中,TinyEngine将成为我不可或缺的得力助手。

我正在参加【有奖征文 第31期】体验OpenTiny带来的前端开发创新模式
链接:https://bbs.huaweicloud.com/blogs/430969

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。