|
|
楼主 |
发表于 2026-6-21 15:17:47
|
显示全部楼层
创建 Pinia 全局 Store新建文件 src/stores/device.ts。我们把设备监听逻辑直接写在 Store 内部。typescriptimport { defineStore } from 'pinia') H) F+ }3 V% u/ e8 A
import { ref } from 'vue'
) W/ ]% m" T! |, L+ K6 C6 t I
* }' `0 Y7 V9 X5 l$ bexport const useDeviceStore = defineStore('device', () => {
1 s& |4 M2 E4 `$ v; z const isMobile = ref(false)# G0 k. ^2 N, L; I
let mediaQuery: MediaQueryList | null = null/ | y1 d! m e# z# Z/ b% ^
3 D7 n' E4 r9 c const updateDevice = (e: MediaQueryListEvent | MediaQueryList) => {% x% h5 R5 _: f
isMobile.value = e.matches8 K/ F ]/ e9 W, ?$ x. Z6 O
}$ m: {8 D& _4 g; b' g8 m+ j
8 O) S5 D- u8 K; T* U' _ // |
|