鸿蒙小技巧

1.子调用父的方法

子组件

父组件

2.使用emitter实现孙子传爷

孙子组件

TypeScript 复制代码
import emitter from '@ohos.events.emitter';

    let event: emitter.InnerEvent = {
              eventId: 1,
              priority: emitter.EventPriority.HIGH
            };

            let eventData: emitter.EventData = {
              data: {
                "state": true,
                "item": JSON.stringify(this.item)
              }
            };

            // 孙子组件发送事件
            emitter.emit(event, eventData);

爷爷组件

TypeScript 复制代码
  aboutToAppear(): void {
   

    let event: emitter.InnerEvent = {
      eventId: 1
    };

    let callback = (eventData: emitter.EventData): void => {
      if (eventData && eventData.data) {

        this.item = JSON.parse(eventData.data.item)
        this.isShow = eventData.data.state
      }
    };

    // 爷爷组件监听事件
    emitter.on(event, callback);
  }
相关推荐
拉不动的猪9 分钟前
Axios 请求取消机制详解
前端·javascript·面试
该用户已不存在12 分钟前
2025 年 8 款最佳远程协作工具
前端·后端·远程工作
lxh011320 分钟前
螺旋数组题解
前端·算法·js
E***U94522 分钟前
前端安全编程实践
前端·安全
老华带你飞33 分钟前
海产品销售系统|海鲜商城购物|基于SprinBoot+vue的海鲜商城系统(源码+数据库+文档)
java·前端·数据库·vue.js·论文·毕设·海鲜商城购物系统
x***B41143 分钟前
React安全编程实践
前端·安全·react.js
D***t1311 小时前
前端微服务案例
前端
哀木1 小时前
诶,这么好用的 mock 你怎么不早说
前端
Lear1 小时前
UniApp PDF文件下载与预览功能完整实现指南
前端
Heo1 小时前
关于XSS和CSRF,面试官更喜欢这样的回答!
前端·javascript·面试