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

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];
      }
    },
     

  }
})
相关推荐
前端小白从0开始34 分钟前
Vue3项目实现WPS文件预览和内容回填功能
前端·javascript·vue.js·html5·wps·文档回填·文档在线预览
難釋懷1 小时前
Vue解决开发环境 Ajax 跨域问题
前端·vue.js·ajax
特立独行的猫a1 小时前
Nuxt.js 中的路由配置详解
开发语言·前端·javascript·路由·nuxt·nuxtjs
咸虾米2 小时前
在uniCloud云对象中定义dbJQL的便捷方法
前端·javascript
梨子同志2 小时前
JavaScript Proxy 和 Reflect
前端·javascript
汤圆炒橘子2 小时前
状态策略模式的优势分析
前端
90后的晨仔2 小时前
解析鸿蒙 ArkTS 中的 Union 类型与 TypeAliases类型
前端·harmonyos
IT_陈寒2 小时前
Element Plus 2.10.0 重磅发布!新增Splitter组件
前端·人工智能·后端
挑战者6668882 小时前
vue入门环境搭建及demo运行
前端·javascript·vue.js
贩卖纯净水.2 小时前
Webpack的基本使用 - babel
前端·webpack·node.js