Vue一个组件调用另一个组件的方法

这种方法不常用,项目中有个地方共享数据了,起初没用vuex做,后来有个地方不好解决,这两个组件没有什么关系

1.首先同一个vue实例来调用两个方法。所以可以建立一个中转站。

建立 util.js 中转站文件(任/assets/js/util.js)

import Vue from 'vue'
export default new Vue

2.分别在两个页面引入该文件(注意路径)

import Utils from '../../assets/js/util.js';

3.调用方代码(第二个参数是传递的参数)

methods: {
    functionA() {
        Utils.$emit('demo','msg');
    }
}

4.被调用方代码

复制代码
 mounted(){
     Utils.$on('demo', (msg) => {
         console.log(msg);
         this.functionB();
     })
 },
 methods: {
     functionB() {
         ...
     }
 }
复制代码

原文地址:http://t.zoukankan.com/shun1015-p-13821684.html

posted @   埃菲尔上的加菲猫  阅读(831)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示

目录导航