根據計算屬性內的測試傳遞props
<p>我在Nuxt 3的<code>computed()</code>屬性中遇到了一個簡單測試的問題。 </p>
<pre class="brush:php;toolbar:false;">const test = computed(() => {
if (process.client) {
console.log('工作了。是行動裝置嗎?', window.innerWidth < 768)
return window.innerWidth < 768
} else {
console.log('沒有工作')
return
}
})</pre>
<p>計算屬性的結果總是正確的,但是我想在下面的模板中使用它來有條件地傳遞props。 </p>
<pre class="brush:php;toolbar:false;"><Loader
v-if="isLoading"
:images="test ? brands.desktopLoaderImages : brands.mobileLoaderImages"
/></pre>
<p>問題是無論結果如何,brands.mobileLoaderImages總是作為props傳遞給我的元件,我無法弄清楚為什麼。 </p>
<p>我嘗試使用不同的技術來確定螢幕大小,而不是<code>window.innerWidth</code>,像是<code>@vueuse/core</code>這樣的專用模組,但結果都一樣。我猜問題可能來自Vue的生命週期或其他什麼? </p>