僅限伺服器端渲染的`<server-only>`標籤
<p>我有一些程式碼只需要在客戶端渲染,因此我將它包裹在<code><client-only></code>標籤中。 </p>
<p>然而,為了防止內容跳動,我嘗試只在伺服器端渲染元素,使用了以下程式碼:</p>
<pre class="brush:php;toolbar:false;"><div v-if="$isServer" class="h-nonav bg-gray-500" /></pre>
<p>這樣確實可以運作,但Vue會抱怨伺服器端的HTML與客戶端的不一致。 </p>
<p>這樣做雖然有效,但聽起來有點hackish,並且會導致頁面渲染兩次:</p>
<pre class="brush:php;toolbar:false;"><div v-if="ssr" class="h-nonav bg-gray-500" />
…
data() {
return {
ssr: true
}
},
mounted() {
this.ssr = false
},</pre>
<p>嘗試搜尋文檔,但沒有找到<code><server-only></code>標籤 :(</p>