如何解决如何在Salesforce的Lightning Web组件中使用URLFOR? fileDownload.js fileDownload.html
我是Salesforce中文件处理的新手。我目前正在下载自定义对象的所有记录的文件。我读了许多博客,发现有两种方法可以做到这一点。我决定使用牧羊人的URLFOR()方法,因为它看起来很简单,但是现在我所有的ContentDocumentId都以字符串格式存在,而且我不知道如何在Lightning Web组件中使用URLFOR()。每个博客和帖子都给出了URL,但是一旦创建,我就找不到使用方法。是在Apex或HTML页面中使用的吗?
有人可以引导我吗?
这是我形成的网址
{!URLFOR('/sfc/servlet.shepherd/version/download/' & StringOfContentDocumentIds &'?')}
解决方法
这是VisualForce和Aura组件中使用的表达式语法。
您正在谈论Lightning Web组件(称为LWC),因此此语法无效。 我建议使用标准方法using the navigation service。
如果您真的想使用shepherd
技巧,则需要编写如下内容:
fileDownload.js
import { LightningElement } from 'lwc'
export default class FileDownLoad extends LightningElement {
contentVersionIds = []
get urlOfContentDocumentFile () {
return `/sfsites/c/sfc/servlet.shepherd/version/download/${this.contentVersionIds.join('/')}?`
}
}
fileDownload.html
<template>
<a href={urlOfContentDocumentFile} target="_blank">Download</a>
</template>
请注意,由于您似乎在谈论社区,因此我已将URL更改为添加/sfsites/c
。如果不是,则只需删除该部分。
P.S:我不知道您如何获得contentVersionId的列表,所以我没有涉及那部分。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。