【问题标题】:Open image in the browser instead of downloading it在浏览器中打开图像而不是下载它
【发布时间】:2022-11-17 04:32:42
【问题描述】:

我有一个显示图像的 React 组件(头像),当我单击图像时,它会将它下载到我的本地计算机。我不想要这种行为;我希望当图像被点击时它会在浏览器中打开。

我在后端使用了window.openres.sendFile

<MDAvatar
  src={`${imageConstLink}/imagePayed/${order.paymentCheckImage}`}
  name={order.paymentCheckImage}
  size="xl"
  style={{ cursor: "pointer" }}
  onClick={() =>
    window.open(`${imageConstLink}/imagePayed/${order.paymentCheckImage}`, "_blank")
  }
/>

【问题讨论】:

    标签: reactjs image browser window


    【解决方案1】:

    我认为您需要做的是将 img 包装在 a 标记中,其中组件的 src 是链接中的 href。是这样的:

    export const MDAvatar = ({ src, alt }) => {
      return (
        <a href={src} target="_blank" rel="noreferrer">
          <img src={src} alt={alt} />
        </a>
      );
    };
    

    创建了一个CodeSandbox,所以你可以看到它在工作。

    【讨论】:

    • 它对我不起作用它仍然下载图像而不是显示它当我试图在我的本地文件夹中显示其他图像时它会显示它但是当我从后端收到图像时它会下载它
    • @Bnw_Youcef 你能在 console.log 中显示字符串 ${imageConstLink}/imagePayed/${order.paymentCheckImage} 吗?可能会提示下载的原因,而不是显示它
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-18
    • 2013-10-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多