Laravel Inertia 中的 Vue mixins

Posted

技术标签:

【中文标题】Laravel Inertia 中的 Vue mixins【英文标题】:Vue mixins in Laravel Inertia 【发布时间】:2021-05-04 11:21:45 【问题描述】:

我正在尝试通过 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 的加载。有人可以帮我理解为什么会这样吗?

谢谢。

【问题讨论】:

【参考方案1】:

你的函数需要()

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

然后你在 mixin 函数之前错过了this

console.log(this.myFunction());
    

【讨论】:

以上是关于Laravel Inertia 中的 Vue mixins的主要内容,如果未能解决你的问题,请参考以下文章