我想尝试下载图像点击按钮,但是当我点击按钮,所以不是下载图像,而是直接打开图像,但我想做下载图像,所以如何在reactjs下载图像?
<a
href="https://timesofindia.indiatimes.com/thumb/msid-70238371,imgsize-89579,width-400,resizemode-4/70238371.jpg"
download
>
<i className="fa fa-download" />
</a>
安装文件保护程序包:
npm i file-saver
您的反应组件:
import { saveAs } from 'file-saver'
const Index = () => {
const downloadImage = () => {
saveAs('image_url', 'image.jpg') // Put your image url here.
}
return <Button onClick={downloadImage}>Download!</Button>
}
你可以这样做:
function App() {
const download = () => {
var element = document.createElement("a");
var file = new Blob(
[
"https://timesofindia.indiatimes.com/thumb/msid-70238371,imgsize-89579,width-400,resizemode-4/70238371.jpg"
],
{ type: "image/*" }
);
element.href = URL.createObjectURL(file);
element.download = "image.jpg";
element.click();
};
return (
<div className="App">
<a
href="https://timesofindia.indiatimes.com/thumb/msid-70238371,imgsize-89579,width-400,resizemode-4/70238371.jpg"
download
onClick={() => download()}
>
<i className="fa fa-download" />
download
</a>
</div>
);
}
以下是工作url:https://codesandbox.io/s/clever-noether-3nu2p?fontsize=14
注意:可以做更多的事情。我只是为了演示而创建的
遇到了这个问题,所以试图找出如何下载png图像,发现另一个答案对我来说并不太合适,因为下载的文件无法打开。需要使用arraybuffer转换图像。
这是有效的代码。
function App() {
const download = e => {
console.log(e.target.href);
fetch(e.target.href, {
method: "GET",
headers: {}
})
.then(response => {
response.arrayBuffer().then(function(buffer) {
const url = window.URL.createObjectURL(new Blob([buffer]));
const link = document.createElement("a");
link.href = url;
link.setAttribute("download", "image.png"); //or any other extension
document.body.appendChild(link);
link.click();
});
})
.catch(err => {
console.log(err);
});
};
return (
<div className="App">
<a
href="https://upload.wikimedia.org/wikipedia/en/6/6b/Hello_Web_Series_%28Wordmark%29_Logo.png"
download
onClick={e => download(e)}
>
<i className="fa fa-download" />
download
</a>
</div>
);
}
Codesandbox:https://codesandbox.io/s/dreamy-gould-h1l72
P. S.下载方法取自此回复,但使用普通获取而不是axios。https://stackoverflow.com/a/50220546/10006323
我目前正在做一个个人投资组合,我试图制作一个按钮,如果你点击它,应该下载一份简历。 代码 让用户下载该文件。 我在REACTJS中工作,创建react应用程序
问题内容: 我正在尝试在正在制作的购物车中显示图像,但没有显示出来。我必须导入每个图像吗?我知道我的路径很好,因为它以前可以工作。我认为我的product.js文件中可能有问题,但我无法弄清楚。 这是我的Product.js 数据来自此product.js 我正在提取所有数据,但图像没有显示 问题答案: 假设您使用的是webpack,则需要导入图像以使其像 现在您的图像数据是动态的,直接指定导入路
使用Glide将URL下载到非常容易: 我想知道我是否也可以下载到中?我想下载到原始位图中,然后我可以使用其他工具进行操作。我已经浏览了代码,但不知道如何操作。
我有一个来自服务器的bas64编码图像,我想通过JavaScript强制下载。有可能吗?
问题内容: 您好,我正在尝试从网页下载图像。我正在尝试从“ http://www.yahoo”主页下载该图像。请告诉我如何传递“ http://www.yahoo”作为输入。以及在打开此网页时如何从该页面获取图像。请给我Java代码以从网页获取图像。 问题答案: (throws IOException) 请参阅包装以获取更多信息。那是使用AWT图片。否则,您可以执行以下操作: 然后您可能想要保存图
我试图下载和保存图像从网络使用python的模块。 以下是我使用的(工作)代码: 以下是使用