【问题标题】:Call a Vue method from outside the Vue app (Vue Webpack CLI)从 Vue 应用程序外部调用 Vue 方法(Vue Webpack CLI)
【发布时间】:2018-05-30 05:52:26
【问题描述】:

我需要从我的应用程序外部调用一个方法。我正在使用 Vue CLI。我的方法在一个组件中,看起来像这样:

export default { 
  name: 'home',
  ...
  methods: {
    theMethodINeedToCall() {
      // does stuff
    }
  }

我一直在寻找访问theMethodINeedToCall() 的方法。当您使用 Vue CLI 时,到达那里并不难,但是使用 CLI,我似乎找不到我的路。

【问题讨论】:

  • 您需要在哪里调用它?比如,在 Node.js 的终端窗口中?或者只是在您应用程序的另一部分?考虑使用 Mixins 而不是在其他地方使用方法,组件内的函数实际上只打算在组件内使用,尽管我猜像 MyComponent.methods.theMethodINeedToCall() 这样的东西可能会起作用,具体取决于您的设置。
  • 我正在集成 google recaptcha,它需要一个回调函数。见developers.google.com/recaptcha/docs/invisible
  • 对我来说听起来更像是一个 mixin 的工作,而不是一个组件。基本上,mixin 允许您使用自己的函数扩展 vm,因此您可以创建在代码中随处可访问的全局函数。我有点太累了,无法向您展示如何为此制作 mixin,但官方 vue.js 网站对此有很好的文档。随处可访问的函数基本上是全局函数的定义,这就是 mixin 允许您创建的。

标签: javascript webpack vue.js vue-cli


【解决方案1】:

如果方法与组件无关,最好将方法托管在组件之外

最后组件只是一个对象,只要导入你想要的组件并调用方法即可;

import MyComponent from './path/'

MyComponent.methods.theMethodINeedToCall();

【讨论】:

    猜你喜欢
    • 2016-11-07
    • 2018-01-26
    • 2022-07-12
    • 2019-02-02
    • 2021-02-21
    • 2020-05-15
    • 2017-05-23
    • 2020-11-18
    • 2020-09-28
    相关资源
    最近更新 更多