JavaScript轻应用UI介绍

简介: 本文档在此基础上介绍下轻应用UI是如何开发的。与前者相比,从应用代码的文件结构看,需要增加页面文件,并在全局配置中增加页面路径相关的信息即可。

1、前言

关于轻应用的文档请参考:HaaS轻应用使用文档

此文档对轻应用框架(不含UI部分)的使用做了完整的阐述。

本文档在此基础上介绍下轻应用UI是如何开发的。与前者相比,从应用代码的文件结构看,需要增加页面文件,并在全局配置中增加页面路径相关的信息即可。

 

2、文件结构

轻应用分为 app page 两部分。app 用来描述整个应用,page 用来描述各个页面。

因此,在无屏应用中,轻应用仅包含 app 部分即可,当设备带屏需要UI交互时,则引入 page 部分。

 

app 由两个文件组成,必须放在项目的根目录:

文件

必需

作用

app.js

轻应用入口文件

app.json

轻应用全局设置

 

每一个 page 由一套如下文件组成,分别是:

文件

必需

作用

pageName.js

页面逻辑

pageName.xml

页面结构

pageName.css

页面样式表

 

注意: 为了方便开发者,轻应用规定这三个文件必须具有相同的路径与文件名。

轻应用代码结构示例:


  1. MyAwesomeApp/
  2. ├── README.md
  3. ├── app.js
  4. ├── app.json
  5. └── pages/
  6.     ├── page1/
  7.     │   ├── page1.js
  8.     │   ├── page1.xml
  9.     │   └── page1.css
  10.     └── page2/
  11.         ├── page2.js
  12.         ├── page2.xml
  13.         └── page2.css

 

3、页面路径

app.json 中需要增加页面路径的配置,示例如下:


 
  1. {
  2.   "pages": [
  3.     "pages/page1/page1",
  4.     "pages/page2/page1"
  5.   ]
  6. }

app.json 中的 pages 为数组属性,数组中每一项都是字符串,用于指定轻应用的页面,pages 数组的每一项代表对应页面的路径信息。其中,第一项代表轻应用的首页,系统启动后,默认会自动加载轻应用的首页。

为了便于开发者配置,页面路径不需要写任何后缀,框架会自动去加载同名的.js

 

4、轻应用UI编译运行

 

4.1、轻应用源码获取

轻应用代码即将开源,在后续文档中会增加相关链接。

 

4.2、环境安装

OS安装

轻应用UI基于桌面版的linux环境运行,建议编译也在同一环境下,轻应用UI验证时使用的的OS环境如下:ubuntu-16.04.3-desktop-amd64

依赖库安装

运行用例前,确保SDL2库已安装,在linux环境下,打开终端工具,执行以下命令安装:


  
 sudo apt-get install libsdl2-dev

 

4.3、编译链接

下载代码后,进入根目录下,执行make m=ui,直到编译完成:

生成的固件amp在amp/build/bin目录下。

 

4.4、脚本执行

获取执行的脚本及轻应用模拟运行固件

轻应用代码及固件的结构如下:


   
  1. myApp/
  2. ├── amp                 #轻应用固件
  3. ├── app.js             
  4. ├── app.json
  5. └── pages/
  6.     ├── page1/
  7.     │   ├── page1.js
  8.     │   ├── page1.xml
  9.     │   └── page1.css
  10.     └── page2/
  11.         ├── page2.js
  12.         ├── page2.xml
  13.         └── page2.css

在桌面版linux环境下打开终端工具,并进入用例目录,在该目录下输入以下命令,完成用例执行:

./amp,如下图所示:

 

开发者技术支持

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

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

相关文章
|
11天前
「Mac畅玩鸿蒙与硬件41」UI互动应用篇18 - 多滑块联动控制器
本篇将带你实现一个多滑块联动的控制器应用。用户可以通过拖动多个滑块,动态控制不同参数(如红绿蓝三色值),并实时显示最终结果。我们将以动态颜色调节为例,展示如何结合状态管理和交互逻辑,打造一个高级的滑块控制器应用。
145 78
「Mac畅玩鸿蒙与硬件41」UI互动应用篇18 - 多滑块联动控制器
|
1天前
|
数据处理
「Mac畅玩鸿蒙与硬件45」UI互动应用篇22 - 评分统计工具
本篇将带你实现一个评分统计工具,用户可以对多个选项进行评分。应用会实时更新每个选项的评分结果,并统计平均分。这一功能适合用于问卷调查或评分统计的场景。
102 65
「Mac畅玩鸿蒙与硬件45」UI互动应用篇22 - 评分统计工具
|
12天前
|
UED
「Mac畅玩鸿蒙与硬件40」UI互动应用篇17 - 照片墙布局
本篇将带你实现一个简单的照片墙布局应用,通过展示多张图片组成照片墙效果,用户可以点击图片查看其状态变化。
119 67
「Mac畅玩鸿蒙与硬件40」UI互动应用篇17 - 照片墙布局
|
15小时前
「Mac畅玩鸿蒙与硬件46」UI互动应用篇23 - 自定义天气预报组件
本篇将带你实现一个自定义天气预报组件。用户可以通过选择不同城市来获取相应的天气信息,页面会显示当前城市的天气图标、温度及天气描述。这一功能适合用于动态展示天气信息的小型应用。
51 35
「Mac畅玩鸿蒙与硬件46」UI互动应用篇23 - 自定义天气预报组件
|
24天前
|
监控 JavaScript 算法
如何使用内存监控工具来定位和解决Node.js应用中的性能问题?
总之,利用内存监控工具结合代码分析和业务理解,能够逐步定位和解决 Node.js 应用中的性能问题,提高应用的运行效率和稳定性。需要耐心和细致地进行排查和优化,不断提升应用的性能表现。
174 77
|
2天前
|
存储 索引
「Mac畅玩鸿蒙与硬件44」UI互动应用篇21 - 随机励志语录生成器
本篇将带你实现一个随机励志语录生成器应用。用户点击按钮后,界面会随机显示一条预设的励志语录。该应用展示了如何结合数组操作、状态管理和动态更新界面内容的功能,是一个轻量级的互动应用示例。
57 21
「Mac畅玩鸿蒙与硬件44」UI互动应用篇21 - 随机励志语录生成器
|
17天前
|
存储 UED
「Mac畅玩鸿蒙与硬件37」UI互动应用篇14 - 随机颜色变化器
本篇将带你实现一个随机颜色变化器应用。用户点击“随机颜色”按钮后,界面背景会随机变化为淡色系颜色,同时显示当前的颜色代码,页面还会展示一只猫咪图片作为装饰,提升趣味性。
74 36
「Mac畅玩鸿蒙与硬件37」UI互动应用篇14 - 随机颜色变化器
|
14天前
「Mac畅玩鸿蒙与硬件38」UI互动应用篇15 - 猜数字增强版
本篇将带你实现一个升级版的数字猜谜游戏。相比基础版,新增了计分和历史记录功能,用户可以在每次猜测后查看自己的得分和猜测历史。此功能展示了状态管理的进阶用法以及如何保存和显示历史数据。
71 31
「Mac畅玩鸿蒙与硬件38」UI互动应用篇15 - 猜数字增强版
|
9天前
「Mac畅玩鸿蒙与硬件43」UI互动应用篇20 - 闪烁按钮效果
本篇将带你实现一个带有闪烁动画的按钮交互效果。通过动态改变按钮颜色,用户可以在视觉上感受到按钮的闪烁效果,提升界面互动体验。
62 19
「Mac畅玩鸿蒙与硬件43」UI互动应用篇20 - 闪烁按钮效果
|
10天前
「Mac畅玩鸿蒙与硬件42」UI互动应用篇19 - 数字键盘应用
本篇将带你实现一个数字键盘应用,支持用户通过点击数字键输入数字并实时更新显示内容。我们将展示如何使用按钮组件和状态管理来实现一个简洁且实用的数字键盘。
53 17
「Mac畅玩鸿蒙与硬件42」UI互动应用篇19 - 数字键盘应用
下一篇
DataWorks