之前说写了个记账的小程序自己用,就试试用 Ark UI 来实现试试,试试就试试,小小的踩坑记录。
因为文档上写之后会主推 Ark Ts 方式写 UI,所以没考虑使用兼容 JS 的 API,网络请求使用了 @ohos/axios,另外现在的 API 版本是 API 9。
数据为空时默认值用 undefined,不能用 null
Dec Studio 中运行默认会卸载并重装应用,所以重新运行项目时,存储的数据会全部被清掉,可以点击底部 Run → 小扳手 → Keep Application Data,这样运行时会是更新安装。
Padding 左右效果不一致,设置 padding(10),左边明显比右边多很多,具体原因暂时不明。
没有 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