美文网首页
HarmonyOS开发之组件之间传值@Prop和@Link装饰器

HarmonyOS开发之组件之间传值@Prop和@Link装饰器

作者: 东方三篇 | 来源:发表于2024-05-23 16:15 被阅读0次

组件之间传值@Prop和@Link装饰器的使用和区别

1. 装饰器@Prop

  • @Prop装饰器用来在子组件接收父组件传入的值信息。

  • @Prop装饰器建立的是单向数据绑定,在子组件中可以修改 @Prop装饰的变量信息,但是父组件对应的 @State 不会收到信息,父组件@State装饰的变量也不会发生变化。

  • 父组件@State装饰的变量在父组件中发生变化,自组件@Prop装饰的变量会跟随变化。

    # 父组件
    
    @State passMsg:string = '传递给子组件的信息'
    
    # 调用子组件sonComponent
    sonComponent({msg: this.passMsg}) # 把passMsg传递给子组件
    
    # 子组件
    
    @Prop msg:string # 使用@Prop装饰器接收父组件传入的信息
    
    Text(this.msg) # 渲染父组件传入的信息
    

2. 装饰器@Link

  • @Link 与 @Prop 装饰器使用方式相同,渲染效果也相同

  • 不同点在于 @Link 实现的是双向数据绑定,父组件数据变化,子组件会更新。 子组件更新数据,父组件也能跟着数据变化。

  • 使用 @Link 装饰的变量 在传递时, 需要使用 *** 修饰符。*linkSonComponent({msg:passMsg})

    # 父组件
    
    @State passMsg:string = '传递给子组件的信息'
    
    Text(this.passMsg) # 同时会跟着子组件数据的变化而变化
    # 调用子组件linkSonComponent
    linkSonComponent({msg: $passMsg}) # 把passMsg传递给子组件, 传递信息的方式要使用 $ 修饰符
    
    # 子组件
    
    @Link msg:string # 使用@Link装饰器接收父组件传入的信息
    
    Button(this.msg) # 渲染父组件传入的信息
      .onClick(() => {
          this.msg = 'hello world' # 子组件数据变化,父组件数据也会变化
      })
    

相关文章

  • Vue 3.0 Provide和Inject实现共享数据

    Provide和Inject可以在祖(父)组件和子(孙)组件间实现传值。相比prop只能父子之间传值而言,Prov...

  • vue组件之间的通信

    父组件向子组件传值 prop 英式发音:[prɒp] prop接收的数据 类型 代码: 浏览器输出:from pa...

  • vue prop

    问题描述在vue项目中,父组件通过prop给子组件传值时,如果prop值是从服务器端获取,则父组件可能会传给子组件...

  • Vue - 传值

    Vue 传值有两种:1)父组件向子组件传值(属性传值,Prop传值)2)子组件向父组件传值 一、父组件向子组件传值...

  • react基础

    生命周期相关函数 生命周期简单模板 组件之间传值 父组件 向 子组件 传递信息 >>>主要是通过 prop进行传值...

  • 2019-03-13

    vue父子组件传值,(父组件向子组件传值用prop ,子组件向父组件传值:子组件调用父组件方法值以参数的方式传递)...

  • 2019-03-13

    vue父子组件传值,(父组件向子组件传值用prop ,子组件向父组件传值:子组件调用父组件方法值以参数的方式传递)...

  • 组件之间的传值

    组件之间的传值,包括父子组件传值,兄弟组件之间的传值,其中父子组件包括父组件向子组件传值和子组件向父组件传值,现在...

  • Vue prop 传值和 provide→inject传值的区别

    应用场景 prop传值是平常Vue父子组件之间主要传值的方式,并且这是响应式的。但是,如果你有个应用嵌套了多层组件...

  • Vue的数据传递

    1. cookie、localStorage和sessionStorage 2. 父子组件传值 父传子: prop...

网友评论

      本文标题:HarmonyOS开发之组件之间传值@Prop和@Link装饰器

      本文链接:https://www.haomeiwen.com/subject/eyvtqjtx.html