HarmonyOS 鸿蒙Next:给组件传递参数为函数时报错:not V3 @observed / @track class, attempt to assign value type: 'function', value: 'undefined'!

发布于 1周前 作者 htzhanglong 来自 鸿蒙OS

HarmonyOS 鸿蒙Next:给组件传递参数为函数时报错:not V3 @observed / @track class, attempt to assign value type: ‘function’, value: ‘undefined’!

@Component
struct taskListBodyItem{
@ObjectLink item:taskItem;
taskChange:()=>void = ()=>{};

把组件内部定义的函数,初始化就可以了

1 回复

在HarmonyOS开发中,如果你尝试给组件传递一个函数作为参数并遇到“not V3 @observed / @track class, attempt to assign value type: ‘function’”的错误,这通常意味着你尝试在响应式系统中直接赋值一个非响应式类型(如函数)。

在鸿蒙系统中,[@observed](/user/observed)[@track](/user/track) 装饰器用于标记类的属性为响应式,但函数本身不是响应式数据。如果需要在组件间传递函数,请确保你正确地在组件的props中定义并传递它,而不是尝试将其赋值给响应式属性。

检查你的组件定义,确保函数是作为props传递的,而不是作为组件内部状态的一部分。如果问题依旧没法解决请加我微信,我的微信是itying888。

回到顶部