我需要有“国家”数据从一个api,它不应该被调用的每一个请求。所以我打算在应用程序初始启动(运行一次)时调用这个api,并将api响应分配给vuex状态。因此,状态将只被填充一次,所有到来的请求将从nuxt服务器获得填充状态。我怎么才能做到呢?
Nuxt公开nuxtServerInit
,您可以将其定义为顶级存储(仅在顶级!)中的操作,并将在服务器启动时调用一次。
export const actions = {
async nuxtServerInit({ commit }, { req }) {
// Here you can commit changes to the state
// or call some service you have. Example:
const countries = await api.get('/countries');
commit('setCountries', { countries });
}
};