HarmonyOS @State修饰的class变量没有嵌套的值无法监听
@State buttonProperty: ButtonProperty = new ButtonProperty(0)
build() {
Column() {
Button("触发动画", { type: ButtonType.Normal })
.fontColor(Color.Black)
.fontWeight(FontWeight.Bold)
.border({ width: 1, color: Color.Blue })
.borderRadius(5)
.backgroundColor(Color.Yellow)
.margin(this._margin)
.width('100%')
.height('6%')
.onClick(() => {
this.buttonProperty.animator()
})
Button("被触发动画", { type: ButtonType.Normal })
.fontColor(Color.Black)
.fontWeight(FontWeight.Bold)
.border({ width: 1, color: Color.Blue })
.borderRadius(5)
.backgroundColor(Color.Yellow)
.margin(this._margin)
.width('100%')
.height('6%')
.translate({ x: this.buttonProperty.translateX })
.onClick(() => {
showResult("这是一个 Dialog")
})
}
}
export class ButtonProperty {
translateX: number
constructor(translateX: number) {
this.translateX = translateX
}
animator = (): void => {
this.translateX = -1
console.error("Step01 this.translateX = " + this.translateX)
animateTo({ duration: 2000, curve: curves.springCurve(200, 1, 1, 1.2) }, () => {
console.error("以指定初速度进行x方向的平移的弹簧动画")
// 以指定初速度进行x方向的平移的弹簧动画
this.translateX = 0
console.error("Step02 this.translateX = " + this.translateX)
})
}
}
根据文档对@State装饰变量的属性赋值是可观察的。
// class属性的赋值 this.title.value = 'Hi';
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS 在定时器里面改变@state修饰的变量,无法更新UI吗?
58浏览 • 1回复 待解决
HarmonyOS 动画必须搭配@State修饰的变量才能生效吗?
47浏览 • 1回复 待解决
HarmonyOS @State修饰的数组内部的值变化了,怎么刷新UI?
315浏览 • 1回复 待解决
@State 修饰的变量值改变,界面不刷新
1557浏览 • 1回复 待解决
嵌套Class的属性变化无法触发UI渲染
301浏览 • 1回复 待解决
使用@LocalStorageProp修饰的变量,当子组件中的变量值变了,@Entry页面中的值没有发生变化。
393浏览 • 1回复 待解决
使用@State修饰的数组对象,改变其中的某个对象的变量,自定义组件中的UI没有跟着刷新
838浏览 • 1回复 待解决
HarmonyOS 关于@State或@Link 修饰Array的应用
153浏览 • 1回复 待解决
UI界面中用@state绑定的变量,在逻辑代码中class中做了修改,怎么在UI界面察觉到这个@state变量发生了变化
1761浏览 • 1回复 待解决
HarmonyOS " @State可以修饰ArrayList吗"
388浏览 • 1回复 待解决
HarmonyOS @State装饰的变量需要设置为接口返回的数据时怎么设置初始值?
289浏览 • 1回复 待解决
HarmonyOS @state修饰两个变量,出现值不一致
329浏览 • 1回复 待解决
HarmonyOS @Require 修饰的无状态变量必须要给初始默认值?
172浏览 • 1回复 待解决
HarmonyOS LazyForEach不会更新@State里的值
25浏览 • 1回复 待解决
HarmonyOS @State 是不是不能修饰枚举
60浏览 • 1回复 待解决
LocalStorageLink修饰的变量会自动保存
978浏览 • 1回复 待解决
var能否修饰ArkTS中的变量?
503浏览 • 1回复 待解决
HarmonyOS 嵌套一层的数组无法监听相同数据增加,但是无嵌套的数组可以监听相同数据增加
37浏览 • 1回复 待解决
@State修饰的对象通过传参给子组件,子组件不刷新,获取的值为空
1992浏览 • 1回复 待解决
HarmonyOS使用ObjectLink Observed 无法监听到嵌套类的属性更新
404浏览 • 1回复 待解决
@State装饰嵌套结构的变量时,为什么嵌套结构中数组元素增加或减少时界面不会刷新
2674浏览 • 1回复 待解决
HarmonyOS @State修饰的不应该必须初始化
32浏览 • 1回复 待解决
HarmonyOS 嵌套Class状态观察问题
43浏览 • 1回复 待解决
子组件使用@Link修饰成员变量时,如何通过父组件传值
1850浏览 • 1回复 待解决
@BuilderParam 不支持普通class的变量
787浏览 • 1回复 待解决
可参考一下文档:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-state-0000001774279614-V5#ZH-CN_TOPIC_0000001834459288__状态变量的修改放在构造函数内未生效
请参考demo: