需要一些帮助来解决重装问题。 我通过服务获取数据:
import axios from 'axios'
const apiClient = axios.create({
baseURL: 'www.domain/api/v1',
headers: {
Accept: 'application/json',
'Content-Type': 'application/json'
}
})
和
export default {
getCompanies() {
return apiClient.get('/companies')
},
在商店中
export const actions = {
fetchCompanies({ commit }) {
return CompanyService.getCompanies().then(response => {
commit('SET_COMPANIES', response.data)
})
},
在页面/公司中:
async fetch({ store, error }) {
try {
await store.dispatch('company/fetchCompanies')
} catch (e) {
error({
statusCode: 503,
message: 'Unable to fetch Companies at this time'
})
}
},
工作正常,但是页面上的数据没有重新加载。 一些帮助会很棒。
答案 0 :(得分:2)
如果在分页组件上使用它,则不重新加载的原因是fetch
一次将被称为服务器端,而在导航至其他路由时将被称为客户端。
默认情况下,在查询字符串更改时不调用fetch方法。如果要更改此行为,例如在构建分页组件时,可以设置应通过页面组件的watchQuery属性侦听的参数。在API watchQuery页面上了解更多信息。
查看Nuxt文档:https://nuxtjs.org/api/pages-fetch/
您可以使用watchQuery
来解决此问题。
https://nuxtjs.org/api/pages-watchquery