apply-refference-popover-4-download-file.js 974 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. import dynamicEffectDownloadLinks from './effect-download-links';
  2. /**
  3. * 文件下载
  4. * @param {string} container_klass
  5. * @param {object[]} files - 文件数据
  6. * @param {object} files.file_name - 文件名
  7. * @param {object} files.file_url - 下载链接
  8. * @returns
  9. */
  10. export default function applyRefferencePopover4DownloadFile(container_klass, files) {
  11. let unmount = () => {};
  12. // 处理引用数据
  13. setTimeout(() => {
  14. const selector = `.${container_klass} .agent-answer-download-container`;
  15. // 无序号,渲染所有的内容
  16. const ele = document.querySelectorAll(selector);
  17. renderFlag(ele);
  18. }, 0);
  19. function renderFlag(ele) {
  20. // 遍历找到的所有标记元素
  21. ele.forEach((item, idx) => {
  22. if (files && Array.isArray(files) && files.length !== 0) {
  23. unmount = dynamicEffectDownloadLinks(item, files);
  24. }
  25. });
  26. }
  27. return () => {
  28. if (typeof unmount === 'function') {
  29. unmount();
  30. }
  31. };
  32. }