我正在尝试设置一个交叉点观察器,它在我的页面上查找具有 data-original-bg 的元素并将其分配为背景图像 url 样式,以便后加载图像。
我在我的 React 组件中编写了一个函数并将其加载到 ComponentDid Mount 中,但我收到错误“无法分配给不是引用的右值” - 在线
return target.hasAttribute('data-original-bg') ? target.getAttribute('style') += 'background-image:' + backgroundImage : target.getAttribute('style') += 'background-image:' + backgroundImage
我的职能:
componentDidMount () {
this.setIndex = window.setInterval(() => {
this.setupObserver()
}, 3000)
}
setupObserver () {
var nodes = document.querySelectorAll('img[data-original],div[data-original-bg]')
window.io = new IntersectionObserver(function (items) {
for (var i = 0; i < items.length; i++) {
var item = items[i]
var target = item.target
if (target.hasAttribute('src')) {
window.io.unobserve(target)
continue
}
if (!item.intersectionRatio) continue
return target.hasAttribute('data-original-bg') ? target.getAttribute('style') += 'background-image:' + backgroundImage : target.getAttribute('style') += 'background-image:' + backgroundImage
if (target.hasAttribute('data-original')) target.setAttribute('src', target.getAttribute('data-original'))
window.io.unobserve(target)
}
})
for (var i = 0; i < nodes.length; i++) { window.io.observe(nodes[i]) }
}