Skip to content

Commit 92f1e21

Browse files
committed
fix(flexible): 修正 viewportWidth 和 effectiveWidth 的计算方式以匹配断点
1 parent 1e5a08d commit 92f1e21

1 file changed

Lines changed: 4 additions & 5 deletions

File tree

packages/flexible/src/index.ts

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -169,11 +169,10 @@ export const flexible = (options: FlexibleOptions = {}): (() => void) => {
169169
const recalculate = () => {
170170
//FIX: meta viewport 设置的 width 为 device-width 时,window.innerWidth 会比 window.visualViewport?.width 大
171171
// https://stackoverflow.com/questions/36297612/window-innerwidth-in-chromes-device-mode
172-
const visualWidth = window.visualViewport?.width;
173-
const viewportWidth = visualWidth ? visualWidth + scrollbarWidth : window.innerWidth; // 用于断点匹配
174-
// const effectiveWidth = document.documentElement.clientWidth; // 用于rem计算
175-
//TODO: ?没办法去判断滚动条的状态
176-
const effectiveWidth = window.innerWidth - scrollbarWidth;
172+
/** 事实上的宽度,用于来匹配断点 */
173+
const viewportWidth = window.outerWidth;
174+
//实际上的有效宽度
175+
const effectiveWidth = window.outerWidth - scrollbarWidth;
177176

178177
let vw = effectiveWidth / 100;
179178
let matched = false;

0 commit comments

Comments
 (0)