我可以使用Nuxt.js从页面组件的asyncData()
方法调用mixin函数吗?
我的代码:
<template>
...
</template>
<script>
import api from "@/plugins/api/api.js"
...
export default {
...
async asyncData(context) {
...
context.apiMethodName()
...
}
...
}
...
</script>
api.js
import Vue from 'vue'
import API from '@/assets/js/api'
Vue.mixin({
methods: {
apiMethodName() { ... }
}
})
你不能在asyncData中调用vue方法,因为在vue之前执行的asyncData有一个实例。
您可以将方法提取到简单的js函数中,并在asyncData和vue方法中调用它,但请记住,在asyncData中,您将无法访问vue实例属性和其他方法