Vue.js 如何从导入的文件在另一个vue.file中运行函数

Vue.js 如何从导入的文件在另一个vue.file中运行函数,vue.js,Vue.js,我是vue.js新手,我有两个不同的vue文件: 这是第一个文件: import second from second.vue; export default{ component: {second}, data() {return{ data: 'data', }} methods: { function f1{ console.log(this.data); } }, mounted() { this.f1; } }

我是vue.js新手,我有两个不同的vue文件:

这是第一个文件:

import second from second.vue;
export default{
  component: {second},
  data() {return{
    data: 'data',
  }}
  methods: {
    function f1{
      console.log(this.data);
    }
  },
  mounted() {
    this.f1;
  }
}
这是第二个文件:

export default{
name: 'second',
  props: {item:Object},
  methods: {
    function f2{
      // here is the function i need to restart f1.
    }
  },
  mounted() {
    this.f1;
  }
}
我想在运行f2函数时从vue文件重新运行f1函数。如何从导入的文件中触发第一个文件中的函数?

您可以使用自定义事件 关于f2函数

f2(){this.$emit('myEvent')}
然后收听事件并启动f1功能

<second-component v-on:myEvent="f1"></second-component>

首先,不要忘记任何组件中的名称

要在组件之间进行通信,可以使用道具(父级到子级)或事件(子级到父级)。请参见此处的文档:

  • 道具:
  • 活动:
基本上,从孩子到父母的沟通:

儿童:

mounted(){
var returnObj={name:'John',id:1241};
此.$emit(“emitToParentEvent”,returnObj);
}