随笔

鸿蒙开发小小实践踩坑记录

之前说写了个记账的小程序自己用,就试试用 Ark UI 来实现试试,试试就试试,小小的踩坑记录。

因为文档上写之后会主推 Ark Ts 方式写 UI,所以没考虑使用兼容 JS 的 API,网络请求使用了 @ohos/axios,另外现在的 API 版本是 API 9。

数据为空时默认值用 undefined,不能用 null

Dec Studio 中运行默认会卸载并重装应用,所以重新运行项目时,存储的数据会全部被清掉,可以点击底部 Run → 小扳手 → Keep Application Data,这样运行时会是更新安装。

keep-data (1).png

Padding 左右效果不一致,设置 padding(10),左边明显比右边多很多,具体原因暂时不明。

padding.png

没有 Form 组件,组件不能使用泛型

全局 UI 提示 API

import promptAction from '@ohos.promptAction';

promptAction.showToast({            
  message: 'Message Info',
  duration: 2000,      
});

使用子元素的方式(自定义容器组件)

@Component
struct FormItem {
    @BuilderParam child: () => void;

    build() {
        Column() {
            this.child();
      }
    }
}

// 直接渲染子元素
FormItem() {
    TextInput()
}

// 如果需要传递属性
@Builder
generate({ label }: { label: string } ) {
  Text(label)
}

FormItem({ child: this.generate })

参考案例
https://developer.huawei.com/consumer/cn/codelabsPortal/serviceTypes/harmonyos-cn

本文链接:https://note.lilonghe.net/post/harmonyos-kai-fa-xiao-xiao-shi-jian-cai-keng-ji-lu.html

-- EOF --