我正在尝试在同一页面上下载文件。但是问题没有发生。

我调试了代码,并在b64Data变量中获取了数据。 url中添加了blobUrl,但我需要在与此小提琴http://jsfiddle.net/ovfiddle/7NqKb/类似的同一页面中下载

你能告诉我如何解决吗?

在下面提供我的代码段:



fileContents = (data) => {
        console.log(data);
        console.log("data.content--->", data.data.content);
        var contentType = 'application/pdf';

        var b64Data = data.data.content;

        var blob = b64toBlob(b64Data, contentType);
        var blobUrl = URL.createObjectURL(blob);
        console.log("displayDocumentData blobUrl--->", blobUrl);
        //window.location = blobUrl;
        console.log(blobUrl);
        this.setState({ downloadUrl: blobUrl });


    }


    <Button
    onClick={e => {
        this.props.actions.downloadDocumentData(this.fileContents);
    }}
    variant="outlined"
    color="primary"
    size="small"
// className={classes.button}
>

    Download Document test
</Button>

最佳答案

这样尝试

const link = document.createElement('a');
link.href = URL.createObjectURL(blob);
link.setAttribute('visibility', 'hidden');
link.setAttribute('download', 'your file name');
document.body.appendChild(link);
link.click();
document.body.removeChild(link);

关于javascript - 在同一页面上下载文档,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56565350/

10-11 13:49