当我单击 nuxt js 按钮时,会出现响应
When I click the nuxt js button the response appears
我想用 SSR 隐藏 nuxt js 项目和 post 请求的响应。
当页面首次加载时这是可能的。
<template>
<p v-if="$fetchState.pending">Fetching mountains...</p>
<p v-else-if="$fetchState.error">An error occurred :(</p>
<div v-else>
<h1>Nuxt Mountains</h1>
<ul>
<li v-for="mountain of mountains">{{ mountain.title }}</li>
</ul>
<b-btn @click="$fetch">Refresh</b-btn>
</div>
</template>
<script>
export default {
data() {
return {
mountains: []
}
},
async fetch() {
this.mountains = await fetch(
'https://api.nuxtjs.dev/mountains'
).then(res => res.json())
}
}
</script>
但是,当点击按钮时,apiler出现在浏览器网络响应中。
when the page loads
Clicking the button
页面加载时请求没有出现在网络选项卡中的原因是 nuxt 在服务器上运行 fetch 方法,并在加载之前将响应注入页面组件。您想要同一页面上的按钮再次获取数据,但不希望数据请求出现在网络选项卡中?
如果是这样,我认为您将不得不刷新页面。这样,fetch 方法会在页面加载之前再次运行,您的用户将不会看到请求,就像在传统的 SSR 应用程序中一样。然而,对于 Nuxt 应用程序来说,这似乎是一个不寻常的用例!
而不是:
<b-btn @click="$fetch">Refresh</b-btn>
使用:
<b-btn @click="this.$router.go()”>Refresh</b-btn>
我想用 SSR 隐藏 nuxt js 项目和 post 请求的响应。
当页面首次加载时这是可能的。
<template>
<p v-if="$fetchState.pending">Fetching mountains...</p>
<p v-else-if="$fetchState.error">An error occurred :(</p>
<div v-else>
<h1>Nuxt Mountains</h1>
<ul>
<li v-for="mountain of mountains">{{ mountain.title }}</li>
</ul>
<b-btn @click="$fetch">Refresh</b-btn>
</div>
</template>
<script>
export default {
data() {
return {
mountains: []
}
},
async fetch() {
this.mountains = await fetch(
'https://api.nuxtjs.dev/mountains'
).then(res => res.json())
}
}
</script>
但是,当点击按钮时,apiler出现在浏览器网络响应中。
when the page loads
Clicking the button
页面加载时请求没有出现在网络选项卡中的原因是 nuxt 在服务器上运行 fetch 方法,并在加载之前将响应注入页面组件。您想要同一页面上的按钮再次获取数据,但不希望数据请求出现在网络选项卡中?
如果是这样,我认为您将不得不刷新页面。这样,fetch 方法会在页面加载之前再次运行,您的用户将不会看到请求,就像在传统的 SSR 应用程序中一样。然而,对于 Nuxt 应用程序来说,这似乎是一个不寻常的用例!
而不是:
<b-btn @click="$fetch">Refresh</b-btn>
使用:
<b-btn @click="this.$router.go()”>Refresh</b-btn>