JavaScript轻应用:UI组件的属性配置

简介: 之前的文档已经介绍过,轻应用UI主要包含三部分:页面结构(xml文件)、页面样式(css文件)和页面逻辑(js文件),这里主要介绍一下页面结构的组成。

1、前言

之前的文档已经介绍过,轻应用UI主要包含三部分:页面结构(xml文件)、页面样式(css文件)和页面逻辑(js文件),这里主要介绍一下页面结构的组成。

/pages 目录中的 xml 文件用于定义当前这个页面的结构,文件内容遵循 xml 语法。xml文件中主要包含了UI组件的标签,以及UI组件的属性。

2、UI组件标签

以文本组件为例,其标签名称是text,通过以下方式可以创建一个文本组件。组件的通用属性和专有属性如下所示,开发者可以通过属性配置来管理该文本组件。

xml文件示例:

  1. <page>
  2. <text id="amp" value="amp text" > text>
  3. page>

轻应用框架已支持的UI组件及标签汇总如下:

UI组件名称

标签

按键

button

视图容器

container

图标

icon

图片

image

线条

line

列表

list

预加载

preload

进度条

progress

滑动选择器

slider

开关

switch

文本

text

可编辑文本

textarea

另外还有一个重要的标签page,page代表页面,在每个xml文件中有且只能有一个page标签。

3、UI组件属性

3.1、通用属性

通用属性是每一个组件都拥有的属性,目前暂定只有一个id是通用属性,组件的样式是通过id选择器来完成的(在后续的页面样式一章中会详细介绍)。

通用属性

说明

示例

id

组件的id会在css选择器和组件属性赋值时使用。

3.2、组件专有属性

每个UI组件都支持不同的属性,例如文本组件(text)中的属性value表示文本内容;按键(button)中的属性包含按键点击的回调事件,以及按键点击后的颜色。

text的特有属性

属性

说明

类型

默认值

value

控件文本

string

-

button的特有属性

属性

说明

类型

默认值

press-color

按下后的颜色

color

#BEBEBE

value

控件文本

string

-

onClick

点击回调事件

function(id: string)

-

其他的组件及属性配置可参考UI组件。

4、参考示例

下面我们通过两个完整的示例来详细介绍一下UI的标签和属性。

text标签

app.json配置:

  1. {
  2. "version": "0.0.1",
  3. "io": {
  4. },
  5. "pages": [
  6. "pages/text/text"
  7. ],
  8. "debugLevel": "DEBUG"
  9. }

可以看到轻应用UI的pages中包含一个页面,页面路径为"pages/text/text",可以看到在和app.json和pages文件夹位于同一目录,另外amp为轻应用在linux上编译链接生成的可执行文件。

并且在页面路径下可以看到以下几个文件:

xml文件示例:

  1. <page>
  2. <text id="amp" value="amp text"> text>
  3. page>

通过xml文件中的描述可以看到,该页面中只有一个text文本,该文本的内容为"amp text",id是"amp"。在桌面版Linux环境上执行用例后,运行结果如下:

button 按键

app.json配置:

  1. {
  2. "version": "0.0.1",
  3. "io": {
  4. },
  5. "pages": [
  6. "pages/button/button"
  7. ],
  8. "debugLevel": "DEBUG"
  9. }

app.json的配置同上,不再详细描述。

xml文件示例:

  1. <page>
  2. <button id="button1" value="press"> button>
  3. page>

通过xml文件中的描述可以看到,该页面中只有一个button按键,按键上显示的内容为"press"。在桌面版Linux环境上执行用例后,运行结果如下:

开发者技术支持

如需更多技术支持,可加入钉钉开发者群,或者关注微信公众号

更多技术与解决方案介绍,请访问阿里云AIoT首页https://iot.aliyun.com/

相关文章
|
8天前
|
JavaScript 前端开发 API
详解队列在前端的应用,深剖JS中的事件循环Eventloop,再了解微任务和宏任务
该文章详细讲解了队列数据结构在前端开发中的应用,并深入探讨了JavaScript的事件循环机制,区分了宏任务和微任务的执行顺序及其对前端性能的影响。
|
9天前
|
JavaScript 开发者
深入理解Node.js事件循环及其在后端开发中的应用
【8月更文挑战第57天】本文将带你走进Node.js的事件循环机制,通过浅显易懂的语言和实例代码,揭示其背后的工作原理。我们将一起探索如何高效利用事件循环进行异步编程,提升后端应用的性能和响应速度。无论你是Node.js新手还是有一定经验的开发者,这篇文章都能给你带来新的启发和思考。
|
8天前
|
自然语言处理 JavaScript 前端开发
JS中this的应用场景,再了解下apply、call和bind!
该文章深入探讨了JavaScript中`this`关键字的多种应用场景,并详细解释了`apply`、`call`和`bind`这三个函数方法的使用技巧和差异。
|
1月前
|
JavaScript 前端开发
JavaScript基础知识-枚举对象中的属性
关于JavaScript基础知识中如何枚举对象属性的介绍。
27 1
JavaScript基础知识-枚举对象中的属性
|
14天前
|
自然语言处理 前端开发 JavaScript
探索JavaScript中的闭包及其实际应用
本文深入探讨了JavaScript中闭包的概念、特性及其在实际项目中的应用。通过具体示例,详细讲解了闭包的创建方法和用途,揭示了闭包在数据保护和模块化开发中的重要性。同时,还讨论了闭包可能带来的内存管理问题及优化策略,为前端开发者提供了全面的闭包知识和实践指导。
|
17天前
|
JavaScript
从零开始写一套广告组件【一】搭建基础框架并配置UI组件库
其实这个从零有点歧义,因为本质上是要基于`tdesign-vue-next`来进行二次封装为一套广告UI组件库,现在让我们在一起快乐的搭建自己的广告UI库之前,先对以下内容做出共识:
33 0
从零开始写一套广告组件【一】搭建基础框架并配置UI组件库
|
23天前
|
自然语言处理 JavaScript 前端开发
探索JavaScript中的闭包:从基础概念到实际应用
本文深入探讨了JavaScript中闭包的概念,从定义、作用域链和实际应用等方面进行了详细阐述。通过生动的比喻和实例代码,帮助读者理解闭包在函数执行上下文中的重要性,以及如何在实际开发中有效利用闭包解决复杂问题。同时,文章也指出了过度使用闭包可能导致的潜在问题,并给出了相应的优化建议。
|
28天前
|
存储 JavaScript 前端开发
JS中的数组有哪些常用操作函数和属性
【9月更文挑战第7天】JS中的数组有哪些常用操作函数和属性
11 1
|
29天前
|
C# Android开发 开发者
Uno Platform 高级定制秘籍:深度解析与实践样式和模板应用,助你打造统一且高效的跨平台UI设计
【9月更文挑战第7天】Uno Platform 是一个强大的框架,支持使用 C# 和 XAML 创建跨平台 UI 应用,覆盖 Windows、iOS、Android、macOS 和 WebAssembly。本文介绍 Uno Platform 中样式和模板的应用,助力开发者提升界面一致性与开发效率。样式定义控件外观,如颜色和字体;模板则详细定制控件布局。通过 XAML 定义样式和模板,并可在资源字典中全局应用或嵌套扩展。合理利用样式和模板能简化代码、保持设计一致性和提高维护性,帮助开发者构建美观高效的跨平台应用。
32 1
|
1月前
|
JavaScript API 数据库
深入理解Node.js事件循环及其在后端开发中的应用
【9月更文挑战第3天】本文将深入浅出地介绍Node.js的事件循环机制,探讨其非阻塞I/O模型和如何在后端开发中利用这一特性来处理高并发请求。通过实际的代码示例,我们将看到如何有效地使用异步操作来优化应用性能。文章旨在为读者揭示Node.js在后端开发中的核心优势和应用场景,帮助开发者更好地理解和运用事件循环来构建高性能的后端服务。
下一篇
无影云桌面