mineadmin / MineAdmin-Vue

MineAdmin Vue 是一个开源免费专门适配于 MineAdmin 后台权限管理系统的前端中后台模板,使用了 vue3, vite5, pinia, arco design, javascript 等主流开发技术,未使用Typescript,我们选择了简单。
MIT License
314 stars 102 forks source link

showFile的使用 #211

Open tsolong opened 2 weeks ago

tsolong commented 2 weeks ago

https://github.com/mineadmin/MineAdmin-Vue/issues/86

你好,我也碰以如上这个问题,你的回答是在showFile方法中传入qiniu,传还是不行啊,而且这个config里面的地址是写死的,不支持环境区分。

 <a-avatar>
    <img :src="record.avatar ? $tool.showFile(record.avatar) : $url + 'avatar.jpg'" style="object-fit: cover" />
  </a-avatar>
tool.showFile = function(hash, defaultStorage = 'LOCAL') {
  if (hash.indexOf('.') !== -1 ) {
    return tool.viewImage(hash, defaultStorage)
  }
  let mode = tool.local.get('site_storage_mode') ? tool.local.get('site_storage_mode').toUpperCase() : defaultStorage
  return uploadConfig.storage[mode] + '/system/showFile/' + hash
}

就算我 调用showFile第二个参数传入QINIU,但你的showFile方法还是会走/system/showFile这个路径,这路径是走后端接口的服务,而当配置成QINIU时,record.avatar的值是一个hash,传入showFile还是一个hash,这就图片的访问图片就变成了,qiuniu.com/system/showFile/hash,而七牛的服务器根据没有system/showFile这个方法,这个方法是我们mineadmin提供的啊,怎么搞?