不需要图片预加载的情况不应该是从接口数据中获取的高度吗?
来源:10-6 布流:区分图片预加载,获取元素关键属性

demonCry
2022-06-09
这一节中 不需要图片预加载时 是这样获取的高度
const useItemHeight = () => {
itemHeights = [];
// 拿到所有元素
let itemElements = [...document.getElementsByClassName('m-waterfall-item')];
itemElements.forEach(el => {
itemHeights.push(el.offsetHeight);
});
// 渲染位置
useItemLocation();
};
但难道不是应该从接口中后台返回的高度数据中获取吗? 像下面这样
const useItemHeight = () => {
itemHeights = [];
data.forEach(item => {
item.push(item.photoHeight);
});
// 渲染位置
useItemLocation();
};
6.10
如果按照这一节的写法中 我们disable cache 然后Network 切换为slow 3g后 会出现如下bug
6-11
我改完往后看的时候发现 10-10讲了这问题 QAQ
写回答
1回答
-
Sunday
2022-06-09
你好
不是的。
不需要图片预加载意味着图片拥有初始高度(不需要等待图片加载过程),而不是数据包含了 item 高度。因为 图片 高度并不等于 item 的高度。
052022-10-06
相似问题