【问题标题】:How do I call a Vue method into a plain javascript function?如何将 Vue 方法调用到普通的 javascript 函数中?
【发布时间】:2020-04-27 04:18:30
【问题描述】:

Vue 应用代码:

var app = new Vue({
    el: "#APP",
    data: {some data},
    methods: {
            some_method: function() {
                   ......
            }
});

some_js_func = function() {
       "How do I call 'some_method' to here"
};
some_js_func();

我尝试调用app.some_method(),但它不起作用。

【问题讨论】:

标签: javascript jquery vue.js vuejs2


【解决方案1】:

使用纯 JavaScript,您可以通过 $options 属性访问 some_method 函数,如下所示:

var app = new Vue({
    methods: {
            some_method: function() {
                   alert("hello");
            }}
});

someJSfunc = function() {
       app.$options.methods.some_method();
};

someJSfunc();
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>

【讨论】:

  • 为什么不直接调用方法:app.some_method();?
  • @Imarqs,我猜这在 Vue2 中是不可能的。
  • 像这样为我工作window.someJSfunc = function() { app.$options.methods.some_method(); };
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-05-08
  • 2021-07-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-15
  • 2017-12-26
相关资源
最近更新 更多