VueJS解码base64 html字符串

为了能够为可上传的HTML文件实现实时预览,我需要解码base64字符串的帮助。

当我将文件传递到输入元素并用FileReader()读取时,我得到了base64编码的字符串。

我该怎么做才能将其转换为HTML / TXT?

我已经找到了一些有关解码图片的东西,不幸的是这并没有帮助我。

handleFileUpload() {
          this.file = this.$refs.file.files[0];
          let reader = new FileReader();

          reader.addEventListener("load",function() {
            this.html = atob(reader.result);
          }.bind(this),false);

          reader.readAsDataURL(this.file);
        },

输出:

data:text/html;base64,PGh0bWwgeG1sbnm6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiDQp4bWxuczpvPSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTpvZmZpY2UiDQp4bWxuczp4PSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTpleGNlbCINCnhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy9UUi9SRUMtaHRtbDQwIj4NCg0KPGhlYWQ+DQo8bWV0YSBodHRwLWVxdWl2PUNvbnRlbnQtVHlwZSBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9d2luZG93cy0xMjUyIj4NCjxtZXRhIG5hbWU9UHJvZ0lkIGNvbnRlbnQ9RXhjZWwuU2hlZXQ+DQo8bWV0YSBuYW1lPUdlbmVyYXRvciBjb250ZW50PSJNaWNyb3NvZnQgRXhjZWwgMTUiPg0KPGxpbmsgaWQ9TWFpbi1GaWxlIHJlbD1NY......
wing_wx 回答:VueJS解码base64 html字符串

应该使用readAsText而不是readAsDataURL,以便获得文本而不是斑点。

handleFileUpload() {
          this.file = this.$refs.file.files[0];
          let reader = new FileReader();

          reader.addEventListener("load",function() {
            this.html = reader.result;
          }.bind(this),false);

          reader.readAsText(this.file);
        },
,

您可以预览HTML文件,将Math Ellen的答案通过将结果放入这样的html对象中即可:

    <object type="text/html"
     data="file.html"
     width="250"
     height="200">
    </object>
本文链接:https://www.f2er.com/3151586.html

大家都在问