Bestehen Sie Requisiten basierend auf Tests innerhalb berechneter Eigenschaften
P粉875565683
2023-08-17 19:18:01
<p>Bei einem einfachen Test in der Eigenschaft <code>computed()</code> von Nuxt 3 ist ein Problem aufgetreten. </p>
<pre class="brush:php;toolbar:false;">const test = berechnet(() => {
if (process.client) {
console.log('Funktioniert. Handelt es sich um ein mobiles Gerät?', window.innerWidth < 768)
return window.innerWidth <
} anders {
console.log('Hat nicht funktioniert')
zurückkehren
}
})</pre>
<p>Das Ergebnis der berechneten Eigenschaft ist immer korrekt, aber ich möchte es in der Vorlage unten verwenden, um Requisiten bedingt zu übergeben. </p>
<pre class="brush:php;toolbar:false;"><Loader
v-if="isLoading"
:images="Test ? Brands.desktopLoaderImages: Brands.mobileLoaderImages"
/></pre>
<p>Das Problem besteht darin, dass brand.mobileLoaderImages unabhängig vom Ergebnis immer als Requisiten an meine Komponente übergeben wird und ich nicht herausfinden kann, warum. </p>
<p>Ich habe versucht, eine andere Technik als <code>window.innerWidth</code> zu verwenden, z. B. ein dediziertes Modul wie <code>@vueuse/core</code>, aber das Ergebnis ist das gleiche. Ich vermute, das Problem könnte im Lebenszyklus von Vue liegen oder so? </p>
建议使用
useBreakpoints
从VueUse中使用它的nuxt模块: