我发完贴回去刷新了一下就发现 initialValue 生效了。。Why ???????
所以下一个问题是,手机松开滑动时才会响应 resize 事件,,有什么方案优化么?
手机端的 100vh 和实际并不一致,会被浏览器自身的底部工具条遮挡,所以用了 window.innerHeight * 0.01
自动计算,然而加载完成后并不能成功初始化;
// const vhSize = useCssVar('--vhSize', appLeft, { initialValue: GetVh() })
const vhSize = useCssVar('--vhSize', appLeft, { initialValue: '7.56px' })
// 上边 initialValue 指定不生效
const setVhSize = () => {
vhSize.value = GetVh()
}
// setVhSize()
// 无论是这样直接调用还是写在 onMounted() 里都不管用
// 这里响应窗口变化到是正常
useEventListener(window, 'resize', (event) => {
setVhSize()
})
useCssVar | VueUse 中文文档:
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.