用js将字符串输出为html文件

317 阅读1分钟

利用Blob对象即可

        let htmlString=`
        <div>
            <div>
                123
            </div>
        </div>
        `
        let urlObject = window.URL || window.webkitURL || window
        let export_blob = new Blob([htmlString])
        let save_link= document.createElementNS('http://www.w3.org/1999/xhtml', 'a')
        save_link.href = urlObject.createObjectURL(export_blob)
        let exportFileName = 'test.html'
        save_link.download = exportFileName
        save_link.click()

输出的结果如下

image.png

在chrome中打开

image.png

以记事本方式打开

image.png 可见并没有自动生成html标签、head标签和body标签等,所以使用Blob输出html文件时需要在字符串中提前生成html、head等标签。