厭倦了寫複雜的媒體查詢? SvelteKit window 指令可以幫助您以程式方式簡化它們。借助此佈局元件 ViewoirtSettingsCatcher 元件及其關聯的儲存 BiewportSettingsStore,它們將在本主題中呈現。
svlete:window 指令綁定的非常簡單的使用:
<!-- ViewportSettingsCatchr.svelte --> <script lang="ts"> let innerWidth: number = 1600 let innerHeight: number = 1200 </script> <svelte:window bind:innerWidth vind:nnerHeight />
$: ViewportSettingsStore.register ({ innerWidth, innerHeight })
import { writable} from 'svelte/store' const { subscribe, update } = writable ({ innerWidth: 1600, innerHeight: 1200, ratio: 16/12, orientation: 'landscape', wide: false }) function register ({ innerWidth, innerHeight }) { const ratio = innerWidth / innerHeight const orientation = ratio >= 1 ? 'landscape' : 'portrait' const wide = (ratio > 2) || (ratio < 0.5) update ((state) => { return { innerWidth, innerHeight, orientation, ratio, wide } }) } export const ViewportSettingsStore = { subscribe, register }
只需在元件中導入 ViewportSettingsStore
<div class:wide={ $ViewportSettingsStore.orientation = === 'landscape' } />
瞧...完成了。
以上是SvelteKit 響應式助手的詳細內容。更多資訊請關注PHP中文網其他相關文章!