当前位置: 首页 > news >正文

鸿蒙开发 组件之间的传值

1.@Prop:父组件传递给子组件,单向传递,子组件改变值,父组件UI不更新。

  引入子组件  并赋值,子组件用@Prop 接收

  import headerView from '../../common/bean/BaseNavHeaderView'   

headerView({titlestr:'添加地址',isback:true,isleftimage:'',isright:true,rightcontentstr:'保存',rightimage:'',fromehere:'添加地址',startCalcute:this.startCalcuteMoney.bind(this)
}).width('100%').height('44').backgroundColor('#FFD615').zIndex(888)
@Component
export default  struct BaseNavHeaderView {@Prop titlestr:string;isback:Boolean;isleftimage:string;isright:Boolean;rightcontentstr:string;rightimage:string;fromehere:string;startCalcute:() => void = () =>{}

2.@Link 双向传递,子组件改变父组件UI更新,注意:不能修饰带@Entry 类型的pages.

   父试图定义变量,传递给子组件child时要用$

@State dianjicounts:number = 0

 child({dianjicounts:$dianjicounts})

子组件接收

 @Component export default struct child {

      @Link dianjicounts:number

    调用用this.dianjicounts

}

3.@Provide/@Consume 不需要传递参数,UI会更新

 父组件定义并调用子组件

@Provide dianjicounts: number = 0 

child()

子组件接收

@Component export default struct child {

     @Consume dianjicounts:number

     调用用this.dianjicounts

}

4.方法传递

  父组件定义方法

startCalcuteMoney():void{

     console.log('保存一下')

}

传给子组件,要用bind方法绑定一下

headerView({

   startCalcute:this.startCalcuteMoney.bind(this)

}) 

子组件接收

@Component export default struct BaseNavHeaderView {

        @Prop startCalcute:() => void = () =>{}

子组件调用

    this.startCalcute()

}

http://www.lryc.cn/news/352107.html

相关文章:

  • [晕事]今天做了件晕事35 VM发送给gateway太多ARP,导致攻击检查?
  • 虹科干货丨多设备协同无忧:Linux环境下PCAN固定设备ID通道分配指南
  • 【python】flask操作数据库工具SQLAlchemy,详细用法和应用实战
  • web前端项目已有阿里巴巴图标基础上,再次导入阿里巴巴图标的方法
  • 头歌openGauss-存储过程第2关:修改存储过程
  • ThreadLocal简单使用案例
  • 创建型设计模式之建造者模式
  • mainwindow 无菜单栏 可拖动,边界可扩大,动画浮现上边框
  • 机器学习云环境测试
  • 扩散模型自动管道AutoPipeline
  • Map六种遍历方式
  • 集合-1 数组ArrayListLinkedList
  • 42-1 应急响应之账户排查
  • Python3 笔记:sort() 和 sorted() 的区别
  • vue 引入 emoji 表情包
  • mysql 数据库 增量备份
  • SpringBoot之@Builder 注解
  • 云计算的能源消耗如何影响环境?
  • openwrt设置开机自启 tailscale为例
  • 副业树洞聊天项目/树洞倾诉/陪陪系统源码/树洞源码下载搭建
  • UWB论文:Introduction to Impulse Radio UWB Seamless Access Systems(2):脉冲;超宽带;测距;定位
  • Spring MVC/Web
  • C++中获取int最大与最小值(补)
  • 一个开源的工具类轮子是怎么造出来的
  • 零基础学Java第二十二天之迭代器 Iterator
  • 微服务架构-异步消息传递设计模式
  • 基于SSM的大学生兼职管理系统
  • leetcode刷题记录:前缀和
  • TENT: FULLY TEST-TIME ADAPTATION BY ENTROPY MINIMIZATION--论文笔记
  • Java期末复习指南(1):知识点总结+思维导图,考试速成!