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

小白挑战一周上架元服务——元服务开发06

文章目录

  • 前言
  • 一、元服务开发中用到的知识
    • 1.跳转页面并传参数
    • 2.展示日期组件
    • 3.使用系统Toast组件
  • 二、元服开发中遇到的问题
    • 1.元服务中本地化数据,不支持数据库存储。本来打算用数据库进行存数据,后面增、删、改、查方便一些。发现竟然容不了。存储用的是@ohos.data.preferences (用户首选项)
    • 三.小小展示一下
  • 参考


前言

这两天没有怎么更新文章,家里有点事情给耽误了近1天的时间,剩下的时间,我在进行元服务的开发中了,基本上已经开发结束了。又是一个里程碑式的进展。奥利给~

主要讲一下开发元服务中使用的知识和遇到的问题。


一、元服务开发中用到的知识

1.跳转页面并传参数

  • A页面跳转到B页面,在A页面使用pushUrl写上要跳转的语法。
    this.getUIContext().getRouter().pushUrl({url: 'pages/BPage',params:{type:type.toString()}})
  • 接收页面B,通过路由栈获取参数。在aboutToAppear页面即将出现时,获取数据。
/// 定义接收参数的格式
interface ParamsType {type: string;
}@Entry
@Component
export struct AddPage {// 接收路由参数@State params: ParamsType = { type: '0' };aboutToAppear(): void {// 通过路由栈获取参数this.params = this.getUIContext().getRouter().getParams() as ParamsType;this.message = this.params.type;}...

2.展示日期组件

  /// 显示日历组件private showActionSheet() {this.getUIContext().showDatePickerDialog( {lunar:false,selected: new Date(),lunarSwitch: false,showTime: false,shadow: {radius: 10,offsetX: 20,offsetY: 20,color: "#66333333"},onDateChange:(date)=>{// 使用状态组件接收Date数据,改变时更新Text数据。this.curPikerDate = date;},onAccept: (date) => {// 如果不选默认显示当天this.expiryDate = this.curPikerDate ?? new Date();}})}

3.使用系统Toast组件

  /// 显示系统ToastshowToast(message:string,failTip ?: String){let promptAction: PromptAction = this.getUIContext().getPromptAction();try {promptAction.showToast({message: message,duration: 2000});} catch (error) {let code = -1;console.error(`showToast args error code is ${code}, message is ${failTip ?? message}`);};}

Toast展示如下图。


二、元服开发中遇到的问题

1.元服务中本地化数据,不支持数据库存储。本来打算用数据库进行存数据,后面增、删、改、查方便一些。发现竟然容不了。存储用的是@ohos.data.preferences (用户首选项)

三.小小展示一下

因为还没上架,可能还有小优化一下,我这里只展示一下首页吧!


参考

  • 文档——元服务开发
http://www.lryc.cn/news/622929.html

相关文章:

  • 24. async await 原理是什么,会编译成什么
  • 硬核北京 | 2025世界机器人大会“破圈”,工业智能、康养科技…… 亦庄上演“机器人总动员”
  • 石头科技披露半年报:营收79.03亿元,同比大增78.96%
  • 5 索引的操作
  • 强化学习入门教程(附学习文档)
  • 我的世界Java版1.21.4的Fabric模组开发教程(十九)自定义生物群系
  • 小迪安全v2023学习笔记(六十三讲)—— JS加密断点调试
  • 【图论】分层图 / 拆点
  • 什么是模型预测控制?
  • Windows MCP.Net:革命性的 .NET Windows 桌面自动化 MCP 服务器
  • 【C++学习篇】:基础
  • ZKmall开源商城的数据校验之道:用规范守护业务基石
  • 中本聪思想与Web3的困境:从理论到现实的跨越
  • PyTorch生成式人工智能——使用MusicGen生成音乐
  • 新手向:Python异常处理(try-except-finally)详解
  • JVM垃圾回收器
  • 学习日志35 python
  • Python:如何在Pycharm中显示geemap地图?
  • 基于深度学习的老照片修复系统
  • k8sday08深入控制器(3/3)
  • Docker小游戏 | 使用Docker部署人生重开模拟器
  • K8S的ingress
  • 玩转云原生,使用k9s管理k8s集群和k3s集群
  • 如何在 MacOS 上安装 SQL Server
  • VS Code配置MinGW64编译ALGLIB库
  • 水分含量低、残留物少且紫外光谱纯净的生物溶剂推荐
  • python学习DAY43打卡
  • VScode 使用遇到的问题
  • 北京JAVA基础面试30天打卡11
  • MQ迁移方案