我们可以使用光环组件中的变量来连接一些表达式,我们必须在lwc components
中使用变量名本身,同时循环如何更改js文件中的lwc comp variable
。
我试图使用this.template.querySelector()访问dom
;但是如果我使用渲染的回调,这个只给出值。
<template for:each={documentLinks} for:item="item">
//这里我需要将item.ContentDocument.LatestPublishedVersionId传递给URL字符串的末尾
<img src={item.srcUrl} alt="PDF"/>
我们可以修改从apex返回的数据,但数据是代理我们无法修改它。
在加载时更改dom上的URL的一种可能解决方案是更改从服务器返回的数据。这里,在闪电网络组件中,返回的数据是一个代理对象,只能读取。所以我们必须克隆它(有多种方法来克隆它),进行任何更改。但在这里我做了什么。
因此,覆盖数组将成为新数据。
let overrides = [];
let newData = {
contentDocs: data[i],
srcUrl: '/sfc/servlet.shepherd/version/renditionDownloadrendition=thumb120by90&versionId=' + data[i]['ContentDocument']['LatestPublishedVersionId']
};
makeLoggable(newData);
overrides.push(newData);
function makeLoggable(target) {
return new Proxy(target, {
get(target, property) {
return target[property];
},
set(target, property, value) {
Reflect.set(target, property, value);
},
});
}