当前位置: 首页 > news >正文

AWTK-MVVM 配置文件模型

配置文件模型

AWTK-MVVM 内置了一些配置文件模型,用于读写各种配置文件,比如,JSON/XML/INI/CSV/UBJSON 等。

文件名中可以引用下面的变量。

  • ${app_dir} 应用程序目录
  • ${user_dir} 用户目录
  • ${temp_dir} 临时目录
json(url=${app_dir}/demos/demo_conf/demo.json)

支持 http/https 协议。支持 HTTP 协议时,要启用 socket。支持 HTTPS 协议时,要启用 ssl。

示例

json(url=http://t.weather.sojson.com/api/weather/city/101030100)

支持从资源加载数据。

1. json 配置

示例

{"network" : {"device" : "eth0","ip" : "192.168.1.1"},"serial" : {"device" : "COM1","baudrate" : "115200"}
}

功能:用于读写 JSON 文件。

1.1 内置属性

可以通过路径引用属性值。比如上面的例子,可以用下面的方式访问:

属性名属性的值
network.deviceeth0
network.ip192.168.1.1
serial.deviceCOM1
serial.baudrate115200

1.2 内置命令

命令参数说明
save保存
reload重新加载

1.3 创建参数

参数类型说明
urlstring文件路径(必须)

示例

json(url=${app_dir}/demos/demo_conf/demo.json)

2. ubjson 配置

示例

{"network" : {"device" : "eth0","ip" : "192.168.1.1"},"serial" : {"device" : "COM1","baudrate" : "115200"}
}

功能:用于读写 UBJSON 文件。

2.1 内置属性

可以通过路径引用属性值。比如上面的例子,可以用下面的方式访问:

属性名属性的值
network.deviceeth0
network.ip192.168.1.1
serial.deviceCOM1
serial.baudrate115200

2.2 内置命令

命令参数说明
save保存
reload重新加载

2.3 创建参数

参数类型说明
urlstring文件路径(必须)

示例

ubjson(url=${app_dir}/demos/demo_conf/demo.ubjson)

3. xml 配置

示例

<root><network device="eth0" ip="192.168.1.1" /><serial device="COM1" baudrate="115200" />
</root>

功能:用于读写 XML 文件。

3.1 内置属性

可以通过路径引用属性值。比如上面的例子,可以用下面的方式访问:

属性名属性的值
network.deviceeth0
network.ip192.168.1.1
serial.deviceCOM1
serial.baudrate115200

3.2 内置命令

命令参数说明
save保存
reload重新加载

3.3 创建参数

参数类型说明
urlstring文件路径(必须)

示例

xml(url=${app_dir}/demos/demo_conf/demo.xml)

4. ini 配置

示例

[network]device = eth0ip = 192.168.1.1
[serial]device = COM1baudrate = 115200

功能:用于读写 INI 文件。

4.1 内置属性

可以通过路径引用属性值。比如上面的例子,可以用下面的方式访问:

属性名属性的值
network.deviceeth0
network.ip192.168.1.1
serial.deviceCOM1
serial.baudrate115200

4.2 内置命令

命令参数说明
save保存
reload重新加载

4.3 创建参数

参数类型说明
urlstring文件路径(必须)

示例

ini(url=${app_dir}/demos/demo_conf/demo.ini)

5. csv 配置

示例

eth0,192.168.1.1
eth1,192.168.1.2
eth2,192.168.1.3

功能:用于读写 CSV 文件。

5.1 内置属性

可以通过路径引用属性值。比如上面的例子,可以用下面的方式访问:

用于列表项绑定

属性名属性的值
item.device访问第一列
item.ip访问第二列
item.0访问第一列
item.1访问第二列
item.[0]访问第一列
item.[1]访问第二列

5.2 内置命令

命令参数说明
save保存
reload重新加载

5.3 创建参数

参数类型说明
urlstring文件路径(必须)
col_namesstring列名,用分隔符分隔
sepchar分隔符,默认为逗号

示例

csv(url=${app_dir}/demos/demo_conf/demo.csv, col_names='device,ip', sep=',')

6. json_array 配置

示例

{"networks": [{"device": "eth0","ip": "192.168.1.1"},{"device": "eth1","ip": "192.168.1.2"},{"device": "eth2","ip": "192.168.1.3"}]
}

功能:用于读写 JSON 文件(方便绑定到列表视图)。

6.1 内置属性

可以通过路径引用属性值。比如上面的例子,可以用下面的方式访问:

用于列表项绑定

属性名属性的值
item.devicedevice
item.ipip

6.2 内置命令

命令参数说明
save保存
reload重新加载

6.3 创建参数

参数类型说明
urlstring文件路径 (必须)
prefixstring路径前缀(可选)

示例

json_array(url=${app_dir}/demos/demo_conf/demo_array.json, prefix=networks)

7. xml_array 配置

示例

<networks><network device="eth0" ip="192.168.1.1" /><network device="eth1" ip="192.168.1.2" /><network device="eth2" ip="192.168.1.3" />
</networks>

功能:用于读写 XML 文件(方便绑定到列表视图)。

7.1 内置属性

可以通过路径引用属性值。比如上面的例子,可以用下面的方式访问:

用于列表项绑定

属性名属性的值
item.devicedevice
item.ipip

7.2 内置命令

命令参数说明
save保存
reload重新加载

7.3 创建参数

参数类型说明
urlstring文件路径 (必须)
prefixstring路径前缀(可选)

示例

xml_array(url=${app_dir}/demos/demo_conf/demo_array.xml, prefix=networks)
http://www.lryc.cn/news/310370.html

相关文章:

  • 【活动】金三银四,前端工程师如何把握求职黄金期
  • 萌新学习RSA第二天(离线分解整数N)
  • STM32学习和实践笔记(1): 装好了的keil μVision 5
  • 企业计算机服务器中了360勒索病毒如何解密,360后缀勒索病毒处理流程
  • 【图像拼接/视频拼接】论文精读:Efficient Video Stitching Based on Fast Structure Deformation
  • LASSO算法
  • xss.haozi.me靶场练习
  • Unity 游戏设计模式:观察者模式
  • 计算机体系结构安全:对体系结构如何支持安全机制进行调研
  • b站小土堆pytorch学习记录—— P15 Dataloader的使用
  • 小程序中使用echarts地图
  • swoole协程
  • Android Gradle 开发与应用 (一) : Gradle基础
  • PostgreSQL操作笔记
  • 【微服务】微服务中常用认证加密方案总结
  • 【Unity】实现从Excel读取数据制作年份选择器
  • Sqli-labs靶场第18关详解[Sqli-labs-less-18]自动化注入-SQLmap工具注入
  • 【测开求职】2023秋招快手一面面经
  • 【Go语言】Go语言中的字典
  • Matlab 机器人工具箱 创建机器人
  • 跨平台指南:在 Windows 和 Linux 上安装 OpenSSL 的完整流程
  • JAVA请求示例获取1688商品详情数据API接口item_get-获得阿里巴巴商品详情(按关键词搜索商品列表)
  • 安卓手机安装termux、kali linux及基本配置
  • Python 实现海康机器人工业相机 MV-CS050-10GC 的实时显示视频流及拍照功能(实时显示视频流同时可以进行拍照)
  • 武器大师——操作符详解(下)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(通用属性:Popup控制)
  • Python系列(20)—— 排序算法
  • MySQL中json类型的字段
  • 算法学习——GCD与欧拉函数
  • 40. 组合总和 II(力扣LeetCode)