0

我正在尝试通过 Vue mixin 在 Laravel Inertia 项目上创建一个全局帮助函数,但无济于事:

//app.js
Vue.mixin({
    methods: {
        myFunction() {
            return 'Returnign from myFunction';
        },
    },
});

new Vue({
...
}).$mount(app);

.

//MyComponent.vue
console.log(myFunction()); // ReferenceError: myFunction is not defined

在一个独立的 Vue.JS 项目中,这是可行的。也许在 Inertia 的幕后有一些东西阻止了 mixin 的加载。有人可以帮我理解为什么会这样吗?

谢谢你。

4

1 回答 1

0

你需要()你的功能

Vue.mixin({
    methods: {
        myFunction() {
            return 'Returnign from myFunction';
        },
    },
});

然后你错过了this你的 mixin 功能

console.log(this.myFunction());
    
于 2021-03-03T11:03:23.863 回答