HarmonyOS 鸿蒙Next API12中的装饰器@Link,传参的装饰符是?

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

HarmonyOS 鸿蒙Next API12中的装饰器@Link,传参的装饰符是?

今天发现在API12中给@Link传参,之前一直是$,现在用this.也可以了?

DateComponent自定义组件中可以传以下两种

DateComponent({ selectedDate: this.parentSelectedDate })
DateComponent({ selectedDate: $parentSelectedDate })<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>

请问他俩有什么区别吗?

@Component
struct DateComponent {
@Link selectedDate: number;

build() { Text(${<span class="hljs-keyword"><span class="hljs-keyword">this</span></span>.selectedDate}) } }

@Entry @Component struct ParentComponent { @State parentSelectedDate: number = 9;

build() { Row() { Button(Link修饰的值).onClick(() => { this.parentSelectedDate = 99 }) DateComponent({ selectedDate: this.parentSelectedDate }) } } }<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>

3 回复

在HarmonyOS鸿蒙Next API12中,关于装饰器@Link的传参装饰符,通常并不直接通过@Link自身来传递参数,因为@Link主要用于指示组件间的关联关系,比如页面跳转、服务绑定等,并不直接涉及参数传递。参数传递通常在组件间通信(如通过Intent、Message等)或方法调用时实现。

如果你是在询问如何在组件间传递参数,并且这些组件是通过@Link关联的,那么你可能需要查看与@Link相关的组件间通信机制,如使用Intent传递参数给页面等。

如果问题依旧没法解决请加我微信,我的微信是itying888。

回到顶部