博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Vue.js如何在一个页面调用另一个同级页面的方法
阅读量:6201 次
发布时间:2019-06-21

本文共 1129 字,大约阅读时间需要 3 分钟。

实际开发过程中,当前组件调用完方法之后,也许会调取同一级组件中的方法,本人暂时想到两种办法:

1. vm.$on(event,callback)

  1. 新建一个工具函数util.js,代码如下:
    import Vue from 'vue'export default new Vue;复制代码
  2. 然后两个页面都引用它
    import util from './util'复制代码
    调用方:
    methonds:{    functionA(){        util.$emit('test','test')    }}复制代码
    被调用方:
    methonds:{    functionB(){            }},mounted(){    util.$on('test',(test)=>{        console.log(test);        this.functionB();    })}复制代码

2. vuex

  1. 新建store.js

    import Vue from 'vue';import Vuex from 'vuex';Vue.use(Vuex);const store = new Vuex.Store({    state: {       list:[]    },    mutations: {        setList(state,payload){            state.list = payload        }    },    actions: {        getList({commit}){            getList().then(res=>{                commit('setList',res.data)            })        }    }});export default store;复制代码
  2. 使用

    调用方:

    import {mapAction} from 'vuex'methonds:{    ...mapAction([        'getList'    ]),    functionA(){        this.getList()    }}复制代码

    被调用方:

    import {mapAction,mapState} from 'vuex'computed:{  ...mapState([    'list'  ])  },methonds:{    ...mapAction([        'getList'    ])},mounted(){    this.getlist()}复制代码

转载地址:http://dkaca.baihongyu.com/

你可能感兴趣的文章
Elastic-Job之异常处理器
查看>>
项目经理之项目经理应该做什么
查看>>
解决声卡驱动问题
查看>>
Yeslab数据中心实验室,重量级设备UCS图片展示
查看>>
干锅土豆
查看>>
Android底部导航栏
查看>>
cmd的一些参数
查看>>
母爱无疆
查看>>
VC中调用外部程序方式总结
查看>>
Android代码混淆的实践
查看>>
通过本地的SQL Manage sutudio管理windows azure上的SQL Server
查看>>
CodeSmith模板引擎系列一
查看>>
service redis does not support chkconfig的解决办法
查看>>
获取每个磁盘分区的空间使用率
查看>>
移动互联网发展对应用交付器的新要求
查看>>
中国式并购:流动的宏碁
查看>>
Asp.net mvc3.0安装包及帮助文档下载地址~~
查看>>
Java锁细节整理
查看>>
RHEL 5基础篇—系统设置及基本操作
查看>>
Android开发学习笔记:数据存取之Preference浅析
查看>>