小白指南:手把手教你用低代码开发一个应用页面

news2024/11/20 13:43:57

一、什么是低代码开发

在了解低代码开发之前,我们先看看使用低代码开发的效果。

低代码开发效果示例

低代码开发是DevEco Studio为HarmonyOS开发者提供的可视化页面的开发方式,具备丰富的UI页面编辑能力,开发者可以在图形化的用户界面上自由拖拽组件、完成数据的参数化配置,还能实时预览开发页面的效果,所见即所得。

可能我们会有这样的疑问,“既然能手敲代码完成页面开发,为什么还要用低代码开发呢?”

低代码开发为我们开发者提供了UI界面开箱即用的组件,通过简单拖、拉、拽和可视化数据绑定的操作方式,快速开发用户界面。不仅可以减少键入的代码量,降低开发成本,还提升了页面开发效率,助力高效开发。

二、低代码开发的特性能力
 

低代码开发主要包含以下特性:
 

1.自由拖拽组件;
 

2.可视化数据绑定;
 

3.ForEach轻松复制所需组件;
 

4.媒体查询(MediaQuery);
 

5.一键逃生。
 

接下来,我们通过开发一个豆浆机应用页面实例来依次介绍这些特性。

三、上手低代码开发
 

如何快速创建支持低代码开发的工程?只需在创建新工程时开启Enable Super Visual开关即可。

DevEco Studio提供了支持低代码开发的工程模板,选择该模板后,只需单击开启Enable Super Visual开关,即可快速创建支持低代码开发的工程。
 

如果是JS工程,compileSdkVersion为7及以上;如果是ArkTS工程,compileSdkVersion为8及以上。
 

创建工程

创建完工程后,会在工程目录中自动生成低代码目录结构(如下图所示)。

其中index.ets文件是低代码页面的逻辑描述文件,定义页面里所用到的所有的逻辑关系,比如数据、事件等;index.visual文件存储低代码页面的数据模型,在该文件中进行页面的可视化布局设计与开发。

工程目录结构

1、自由拖拽组件,静态设置组件属性设计排版

双击打开index.visual文件,将需要的组件依次拖入画布中,在画布中开发者可以自由拖拽组件进行排版。

同时单击对应组件,即可在属性栏来设置组件的属性,轻松完成页面各板块的设计。

作为示例,我们依次拖入了4个组件到画布中,对4个组件的属性进行静态设置。

 静态设置属性

那这些组件的层次关系是什么呢?我们可以通过左下角的组件树,清晰直观地看到组件之间的层级结构。

组件层级结构

2、可视化数据绑定

1)变量绑定:

组件的属性不仅只存在静态常量的情况,属性在不同的场景中会需要展示不同的效果,这时就需要通过变量绑定来实现。

在index.ets文件中定义好变量,结合使用 index.visual文件在右侧属性栏,将属性对应的图

切换至

然后在下拉框选择变量this.变量名,快速完成变量的绑定。

作为示例,我们在index.ets定义了4个数据变量,与index.visual文件中的4个组件进行了数据绑定。

数据绑定

2)事件绑定

用户界面在一些特定场景里,还需要有交互的效果,如点击交互,这时给组件绑定相应的事件即可实现。

在index.ets文件里面定义好事件,在组件的Events属性栏选择已定义好的事件后快速完成事件绑定。

作为示例,我们在index.ets定义了点击事件,与index.visual文件中的组件进行了事件绑定。

事件绑定

3、ForEach轻松复制所需组件

ForEach功能用来迭代数组,为每个数据项创建相应的组件,在开发用户界面时,如果有相似的组件,可以轻松复制想要的组件。

在index.ets文件中定义好业务逻辑,选择相应组件,在ForEach属性栏选择该属性后,只要完成该组件下的子组件设置,则会自动复制生成对应组件的属性。

作为示例,我们在index.ets文件中定义好变量后,绑定了index.visual文件中的组件ForEach,只设置了左侧组件的属性,右侧自动复制生成相对应的图片和文字。

ForEach

4、媒体查询(MediaQuery)实现一次开发多设备页面适配
 

低代码开发支持适配多设备适配能力,ArkTS支持横竖屏,结合媒体查询(MediaQuery)可以将组件针对不同设备不同横竖屏设置不用的值, 开发一个设备的页面,使用该功能进行简单的配置后,实现不同设备的页面适配。
 

点击index.visual画布右上角的图标


切换到手机横屏,在手机横屏状态下点击画布右上角的图标

使mediaquery其处于高亮,来进行多设备页面的设计。

MediaQuery

5、一键逃生转换代码

低代码开发支持将可视化.visual文件生成对应的.ets文件代码供我们复制此部分的代码,需要注意的是此操作不可逆,逃生后.ets文件无法转换为.visual文件。

如果需要查看或者复制页面的代码,可以直接点击图标

一键生成代码。

逃生

相信通过以上几个功能点的介绍,大家已经掌握如何使用低代码开发来设计一个页面了。

应用页面开发示例

同时,我们刚发布的DevEco Studio 3.1 Beta1版本也带来了低代码开发的新特性,欢迎各位开发者探索体验:

丰富了组件类型,增加了Refresh 、TimePicker、Toggle、Select、Search等组件;

支持设计稿转低代码和自定义组件,支持导入Sketch文件自动生成可视化页面;

支持根据场景需求自定义组件打造领域特定组件,提升低代码复用能力。

后续还会有更多好用、好玩的功能发布,敬请期待。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

项目质量要怎么保持? 如何借助系统软件进行管理

对于任何项目型的企业总是很关心项目成本的话题,但不知从什么时候开始,高质量等于高成本成了各个企业的一种潜意识。 如果交付的项目产品不符合质量标准,即使企业使用最好的项目管理工具或者每个里程碑都达到并在预算范围内完成项目&#xf…

基于springboot的餐饮管理系统

摘 要本设计以真实场景的菜品信息及相关餐桌预定为设计依据,结合了餐饮管理系统的需求及反映的问题,对系统做出合理的需求分析和界面设计。同时本系统使用了JAVA语言、Springboot框架以及MYSQL作为后台数据库进行开发。从系统描述、系统设计及系统实现等…

【Kubernetes】第二篇 - 购买阿里云 ECS 实例

一,前言 上一篇,简单介绍了 CI/CD 的概念以及 ECS 服务规划,搭建整套服务需要三台服务器,配置如下: ECS 配置启动服务说明2核4GJenkins Nexus Dockerci-server2核4GDocker Kubernetesk8s-master1核1GDocker Kube…

Outcome VS. Output:研发效能提升中,谁会更胜一筹?

2007 年,网景通信公司(Netscape)的联合创始人 Marc Andreessen 在博客 The Pmarca Guide to Startups 中提出 「Product/Market Fit」 ,他写道, 「这意味着在一个良好的市场中,拥有能够满足该市场的产品。」…

SYN480R 解码

目录1.空载情况下2.当有按键被按下3.数据帧分析4.同步码5.数据码6.对24位数据帧分析1.空载情况下 在空载情况下,syn480r 输出引脚,输出的是杂乱无序的波形 2.当有按键被按下 按下按键,会连续输出相同的脉冲波形,放大分析 3.数据…

ParallelsDesktop安装【亲测可行】

我这边安装的是macos最新系统 (Ventura13.2) 本文参考这篇文章安装,但是你完全按照这篇文章会报错,具体可行操作记录如下 一、下载软件和补丁 1、点这里去下载补丁18.0.1 2、点这里去下载对应版本的ParallelsDesktop18.0.1,安装上到试用这里…

RocketMQ 初步了解

RocketMQ 初步了解 前言: ​  近期,因公司使用 RocketMQ 作为消息队列中间件,特此了解。  RocketMQ 是阿里巴巴在 2012 年开发的分布式消息中间件,专为万亿级超大规模的消息处理而设计,具有高吞吐量、低延迟、海量…

计算机图形学:中点BH算法对任意斜率的直线扫描转换方法

作者:非妃是公主 专栏:《计算机图形学》 博客地址:https://blog.csdn.net/myf_666 个性签:顺境不惰,逆境不馁,以心制境,万事可成。——曾国藩 文章目录专栏推荐专栏系列文章序一、问题提出二、…

通俗易懂的机器学习——sklearn鸢尾花分类(KNN)

前言 KNN算法是机器学习中较为简单的入门算法,其主要思想是选取k个与待预测点相近的数据,观察他们的类别,本着离谁近就更像谁的思路对于待预测点进行预测,本文将针对使用sklearn进行KNN算法的使用进行详解 数据预处理 在正式开…

测试开发之Django实战示例 第十二章 创建API

第十二章 创建API在上一章里,创建了一个学生注册系统和选课系统。然后创建了展示课程内容的视图,以及学习了如何使用Django缓存框架。在这一章里有如下内容:建立RESTful API管理API视图的认证与权限建立API视图集和路由1创建RESTful API你可能…

【设计模式】创建型模式

简单工厂模式 系列综述: xxxxxxxxx 文章目录对象创建型模式简单(静态)工厂模式工厂方法模式参考博客😊点此到文末惊喜↩︎ 对象创建型模式 简单(静态)工厂模式 抽象原理 抽象产品基类 :定义了…

35岁测试工程师被辞退,给你们一个忠告

一:前言:人生的十字路口静坐反思 入软件测试这一行至今已经10年多,承蒙领导们的照顾与重用,同事的支持与信任,我的职业发展算是相对较好,从入行到各类测试技术岗位,再到测试总监,再转…

silicon labs平台通过串口升级固件方案

开发环境 windowssimplicity studio 5geck sdk 4.1 一 bootloader 新建BGAPI UART DFU工程 工程新建完成以后看一下linkerfile.ld文件的flash和ram的配置跟自己的application工程是否对应得上 配置串口波特率和引脚 默认使用PB0进入bootloader模式,这里改成Non…

CleanMyMac清理工具软件功能优势介绍

CleanMyMac更新最新版本x4.12,完美适配新版系统macOS10.14,拥有全新的界面。CleanMyMac可以让您安全、智能地扫描和清理整个系统,删除大型未使用的文件,减少iPod库的大小,最精确的应用程序卸载,卸载不必要的…

多传感器融合:MVP和PointPainting

多传感器融合相关的理论真的可以非常复杂,而在感知方面,由于可以和深度学习做结合,所以很多工作可以变得简单有效,有时候一个简单的特征融合都会有很好的效果。本文结合 3D 物体检测,为大家带来两篇工作,一…

城市管网监测系统,保障城市血管生命线!

各种不同的管网线路组成了城市的供血管道,管网对于维持正常的社会生活、生产秩序和公共安全至关重要。我国城市平均漏损率达到38%,部分城市甚至超过50%,远超发达国家的平均水平(10%)。对于管道状态的监测,是…

Unreal Engine08:Pawn的实现

写在前面 Pawn继承于Actor,增加了一些用于控制和提供玩家视角的功能,这里主要是介绍一下Pawn类的实现。 一、创建一个Pawn的C类 创建的C类也是放在Source文件夹中的Public和Private文件夹中;选择Pawn作为继承的父类;头文件中除…

实现博客系统

目录 一、博客系统简介 二、准备工作 三、设计实现数据库 四、封装数据库 创建User类和Blog类 使用JDBC连接数据库 创建BlogDAO类操作数据库中的Blog表 创建UserDAO类操作数据库中的user表 五、实现具体功能 1、实现博客列表页 约定前后端交互接口 服务器端 …

安全运维之mysql基线检查

版本加固 选择稳定版本并及时更新、打补丁。 稳定版本:发行6-12个月以内的偶数版本。 检查方法: 使用sql语句:select version(); 检查结果: 存在问题:当前数据库版本较老需要更新 解决方案:前往http://www.mysql…

2023备战金三银四,Python自动化软件测试面试宝典合集(十四)

15.8 App 的性能测试 内容要点:指标:cpu,内存,电量,流量,FPS,怎么测? cpu,内存,流量 android studiocpu 不能超过 10-20% 普通业务要求在 10%左右,核心的业务…