使用nuxtjs和vuexorm & vuexorm-axios插件。
/页面/index.vue
computed: {
users() {
// this works as expected
return User.all()
}
}plugins/vuex-orm-axos.js
import { Model } from '@vuex-orm/core'
export default ({ $axios }) => {
Model.setAxios($axios)
}存储/index.js
import VuexORM from '@vuex-orm/core'
import VuexORMAxios from '@vuex-orm/plugin-axios'
import User from '@/models/user'
VuexORM.use(VuexORMAxios)
// Create a new database instance.
const database = new VuexORM.Database()
// Register Models to the database.
database.register(User)
export const plugins = [
VuexORM.install(database)
]最重要的是起作用。但是在vuexorm 文档中,它说总是从注入的数据库实例中获取nuxt/ssr应用程序的模型。但是,如果我尝试从$db访问store变量,它将无法工作,因为商店中没有$db变量。
/页面/index.vue
computed: {
users() {
// this wont work as $db is undefined
User () {
return this.$store.$db().model('users')
},
users () {
return this.User.all()
}
}我在这里做错什么了?
发布于 2020-11-04 20:12:19
在您的store/index.js中,您必须导出state以激活Vuex存储。将其添加到文件中:
export const state = () => ({})https://stackoverflow.com/questions/59968719
复制相似问题