我想在前端创建一个vCard,并在ReactJs项目中使其可下载(通过单击按钮)。我使用一个名为vcards-js的NodeJS模块来创建一个包含所需vCard (v3.0)内容的字符串。我正在努力的事情是使它可下载(作为.vcf文件)。我曾尝试使用模块react-file-download和file-saver来实现这一点,但它们都不能正常工作。最后一个在台式机上运行良好,但不能从移动浏览器下载。Chrome mobile打开了一个新的标签并永久加载,Safari mobile只是在一个新的tap中打开了字符串,但并没有将其作为.vcf文件下载。
有什么线索或经验吗?我是否需要创建vCard服务器端并提供下载链接?在我看来太过曲折了。
如果有帮助,这是我的file-saver方法:
var FileSaver = require('file-saver');
var blob = new Blob([card.getFormattedString()], {type: "text/x-vCard;charset=iso-8859-1"});
FileSaver.saveAs(blob, 'card.vcf');发布于 2017-11-10 10:19:50
我在看vcardjs https://github.com/enesser/vCards-js上的文档
你必须在你的后端节点上有一个路由来处理这个过程
它看起来非常直观//保存到文件vCard.saveToFile('./eric-nesser.vcf');
发布于 2020-10-01 08:34:45
您可能希望尝试在后端使用NodeJS / TS包生成它:npm/ez-vcard;GitHub/Maxim-Mazurok/ez-vcard
https://stackoverflow.com/questions/47213958
复制相似问题