0

我有这个设置:

index.vue -> 包含不同的<NuxtLink :to="/abc"><NuxtLink :to="/def">

abc.vue 和 def.vue 具有async asyncData() { ... }从 API 加载服务器端数据的功能。

我的问题是,该功能asyncData仅在请求路径时/abc/def第一次在服务器端执行。感谢 NuxtJS 的文档,我知道这是正常行为。但是我如何在使用时从服务器上预取的 API 中获取数据<Nuxt-Link>

4

1 回答 1

1

那么你需要做一个解决方法。asyncData提供了一个论点context。所以你可以访问你的 vuex 商店:

asyncData({store}) {
   store.commit("somecommit", "somevar");
}

例如,在您的 vuex 商店中,您有一个状态link1

通过您的提交,您可以更改该状态。

现在你可以去<NuxtLink :to="$store.state.link1">

于 2020-07-06T09:58:14.083 回答