前端将图片储存table表格中,页面回显

html 复制代码
   <el-table :data="tableData" v-loading="loading" style="width: 100%" height="calc(100vh - 270px)" :size="tableSize"
        @row-dblclick="enterClick">
        <el-table-column prop="name" label="文档名称" show-overflow-tooltip v-if="checkedCities.indexOf(0) !== -1" width="300"
          align="left">
          <template #default="scope">
            <span>
              <img :src="scope.row.icon" alt="" style="width: 18px;">
              {{ scope.row.name }}
            </span>
          </template>
        </el-table-column>
  </el-table>
javascript 复制代码
let iconList: any = [
  {
    suffix: '.xls',
    icon: '/src/assets/fileImg/xls(1).png'
  },
  {
    suffix: '.xlsx',
    icon: '/src/assets/fileImg/xls(1).png'
  },
  {
    suffix: '.pdf',
    icon: '/src/assets/fileImg/PDF.png'
  },
  {
    suffix: '.dll',
    icon: '/src/assets/fileImg/dll.png'
  },
  {
    suffix: '.vue',
    icon: '/src/assets/fileImg/Vue(1).png'
  },
  {
    suffix: '.html',
    icon: '/src/assets/fileImg/HTML(1).png'
  },
  {
    suffix: '.txt',
    icon: '/src/assets/fileImg/txt.png'
  },
  {
    suffix: '.docx',
    icon: '/src/assets/fileImg/docx_doc.png'
  },
  {
    suffix: '.json',
    icon: '/src/assets/fileImg/JSON.png'
  },
  {
    suffix: '.png',
    icon: '/src/assets/fileImg/png.png'
  }
]

    // 初始化表格数据
const getTableData = async () => {
  try {
    loading.value = true
    const res = await getFileList()
    //根据字段类型排序
    const sortedData = computed(() => {
      return res.slice().sort((a: any, b: any) => a.documentType - b.documentType);
    });

    for (let i = 0; i < sortedData.value.length; i++) {
      let suffix = sortedData.value[i].fileSuffix;
      let documentType = sortedData.value[i].documentType;
      for (let j = 0; j < iconList.length; j++) {
        if (iconList[j].suffix === suffix) {
          sortedData.value[i].icon = iconList[j].icon;
          break;
        } else if (iconList[j].suffix !== suffix && documentType === 2) {
          sortedData.value[i].icon = '/src/assets/fileImg/txt.png';
        } else if (documentType === 1) {
          sortedData.value[i].icon = '/src/assets/fileImg/file.png';
        }
      }
    }
    tableData = sortedData.value
    loading.value = false
  } catch {
    loading.value = true
  }
}
相关推荐
Mr.Jessy15 分钟前
JavaScript学习第六天:函数
开发语言·前端·javascript·学习·html·1024程序员节
code_YuJun41 分钟前
管理系统——应用初始化 Loading 动画
前端
oak隔壁找我42 分钟前
JavaScript 模块化演进历程:问题与解决方案。
前端·javascript·架构
Elieal1 小时前
AJAX 知识
前端·ajax·okhttp
sulikey1 小时前
Qt 入门简洁笔记:从框架概念到开发环境搭建
开发语言·前端·c++·qt·前端框架·visual studio·qt框架
烟袅2 小时前
JavaScript 变量声明报错指南:var、let、const 常见错误解析
javascript
烟袅2 小时前
告别 var!深入理解 JavaScript 中 var、let 和 const 的差异与最佳实践
javascript·面试
烛阴2 小时前
循环背后的魔法:Lua 迭代器深度解析
前端·lua
元拓数智2 小时前
现代前端状态管理深度剖析:从单一数据源到分布式状态
前端·1024程序员节
mapbar_front2 小时前
Electron 应用自动更新方案:electron-updater 完整指南
前端·javascript·electron