小程序子组件调用父组件方法、父组件调用子组件方法

1、子组件调用父组件方法

子组件this.triggerEvent('finish');

javascript 复制代码
    startShare(e) {
      let url = config.apiUrl + "/business/lzShare/edit";
      let data = this.data.currentData;
      util.httpPut(url, data).then((res) => {
        this.triggerEvent('finish');
        console.log(res.result);
      })
 
    },

父组件监听

bind:finish="finishShare"

javascript 复制代码
    <view class="padding flex flex-col flex-space-between " >
      <share bind:finish="finishShare"  data="{{shareData}}"  style="margin-top:40px"></share>
    </view>

2、父组件调用子组件方法

父组件index.json引用子组件

父组件引用子组件,子组件设置id值

调用

this.selectComponent('#filedir')

javascript 复制代码
    saveMoveData(e) {
      this.filedir = this.selectComponent('#filedir')
      let url = config.apiUrl + "/business/lzDocs/changeDir";
      let param = {id: this.data.selectData.id, parentId: this.filedir.getSelect().id}
      util.httpPost(url, param).then((res) => {
         this.loadData();
         this.setData({showMove : false})
      })
    },

子组件的方法

javascript 复制代码
// components/filedir/filedir.js
const icon = require('../../utils/icon.js');

Component({

  /**
   * 组件的属性列表
   */
  properties: {
    data:{}
  },
  observers: {
    'data': function(newVal, oldVal) {
      console.log("newVal====", newVal)
      this.setData({currentData: newVal, dirData: newVal})
      this.setData({navData: []})
    }
  },
  /**
   * 组件的初始数据
   */
  data: {
    navData:[],
    currentData:[],
  },

  /**
   * 组件的方法列表
   */
  methods: {
    getSelect() {
      if (this.data.navData.length == 0) {
        return null;
      } else {
        return this.data.navData[this.data.navData.length-1];
      }
    },
     

  }
})
相关推荐
泯泷5 分钟前
「译」解析 JavaScript 中的循环依赖
前端·javascript·架构
抹茶san8 分钟前
前端实战:从 0 开始搭建 pnpm 单一仓库(1)
前端·架构
Senar35 分钟前
Web端选择本地文件的几种方式
前端·javascript·html
thinkQuadratic39 分钟前
微信小程序动态设置高度,添加动画等常用操作
微信小程序·小程序
烛阴1 小时前
UV Coordinates & Uniforms -- OpenGL UV坐标和Uniform变量
前端·webgl
姑苏洛言1 小时前
扫码小程序实现仓库进销存管理中遇到的问题 setStorageSync 存储大小限制错误解决方案
前端·后端
烛阴1 小时前
JavaScript 的 8 大“阴间陷阱”,你绝对踩过!99% 程序员崩溃瞬间
前端·javascript·面试
中科三方1 小时前
APP和小程序需要注册域名吗?(国科云)
小程序·apache
lh_12542 小时前
ECharts 地图开发入门
前端·javascript·echarts
jjw_zyfx2 小时前
成熟的前端vue vite websocket,Django后端实现方案包含主动断开websocket连接的实现
前端·vue.js·websocket