关于HarmonyOS 鸿蒙Next V2的使用效果不正常
关于HarmonyOS 鸿蒙Next V2的使用效果不正常 场景:存在一个@observedV2类CS,CS包含一个@trace属性sj,页面中用@param装饰CS类实例kk,1是文本框用于显示文本的变化且绑定kk.sj,2、3是下拉选择框,2通过!!绑定kk.sj,3通过$$绑定kk.sj。!!与$$都是双向绑定,2、3一个变化,那么3个组件应该都会同步。实际当2改变时,1、3没有同步,但是3改变时,1、2同步了。当没有3组件时,即只有!!的情况时,1也不会同步变化。通过shift + F6对变量名重构时,使用!!的地方可以同步重构,使用$$的地方不会同步重构。
DEMO截图如下:
想知道是我理解不正确,还是确实就是这样的同步效果呢?还是select没有支持!!同步呢?我的理解,!!与$$的同步效果应该是一致的。
官方文档:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-new-binding-V5
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-two-way-sync-V5
DEMO代码如下:
import { hilog } from '@kit.PerformanceAnalysisKit';
import { router } from '@kit.ArkUI';
@Entry
@ComponentV2
struct CSdestroy {
@Local message: string = 'Hello World';
@Param kk:cs = new cs();
aboutToDisappear(): void {
hilog.info(3,'声明周期destroy','执行销毁')
}
aboutToAppear(): void {
hilog.info(3,'声明周期destroy','页面显示')
}
build() {
Column () {
Text(this.kk.sj)
.id('CSdestroyHelloWorld')
.fontSize(50)
.fontWeight(FontWeight.Bold)
.height(50)
.width('100%')
.alignRules({
center: { anchor: '__container__', align: VerticalAlign.Center },
middle: { anchor: '__container__', align: HorizontalAlign.Center }
})
Select([{value:'A'},{value:'B'},{value:'C'}])
.height(50)
.width('50%')
.value(this.kk.sj!!)
Select([{value:'1'},{value:'2'},{value:'3'}])
.height(50)
.width('50%')
.value($$this.kk.sj)
Button('返回')
.height(50)
.width("50%")
.onClick(() => {
router.back();
})
}
.height('100%')
.width('100%')
}
}
@ObservedV2
class cs{
@Trace sj:string = '';
}
更多关于关于HarmonyOS 鸿蒙Next V2的使用效果不正常的实战教程也可以访问 https://www.itying.com/category-93-b0.html
$$语法:内置组件双向同步,!!既支持内置的也支持自定义的,但是!!不是简单写上!!就叫双向绑定语法了,认真看官方文档。链接你自己都发出来了,认认真真看懂它。
更多关于关于HarmonyOS 鸿蒙Next V2的使用效果不正常的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
好的,我再去看看,但是对于<select>
内置组件的value
属性,不知道是哪里出了问题,在写法上需要注意什么,,
好的谢谢,因为@param
是代理过的对象,所以我在测试能否通过双向绑定,直接和原始对象同步。
关于HarmonyOS 鸿蒙Next V2使用效果不正常的问题,可能涉及多个方面,包括但不限于系统稳定性、应用兼容性、硬件适配性等。以下是一些可能的解决方案概述,专注于鸿蒙系统本身,不涉及Java或C语言内容:
-
系统更新:首先确认设备是否已安装最新的鸿蒙系统更新。系统更新通常包含对已知问题的修复和性能改进。
-
应用兼容性:检查出现问题的应用是否与鸿蒙Next V2系统兼容。部分第三方应用可能尚未完全适配新版本系统,导致运行异常。
-
硬件检查:确认设备硬件是否支持鸿蒙Next V2系统的所有功能。硬件限制可能导致部分系统功能无法正常使用。
-
系统恢复:如果问题持续存在,考虑进行系统恢复或重置。这将清除所有用户数据并恢复到出厂设置,可能解决因系统配置错误导致的问题。
-
反馈问题:如果上述步骤未能解决问题,建议通过华为官方渠道反馈问题。华为可能会根据反馈进行进一步的调查和优化。
请注意,以上解决方案可能因设备型号、系统版本等因素而有所不同。如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html 。