大发龙虎首页    注册   登录
大发龙虎 = way to explore
大发龙虎 是一个大发龙虎关于 分享和探索的地方
现在注册
已注册用户请  登录
大发龙虎推荐 关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
大发龙虎推荐 书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
OPPO Watch
tctc4869
大发龙虎  ›  JavaScript

有哪些 js 插件,能把 js 前端的数据转成文件大发龙虎下载 的?

  •  
  •   tctc4869 · 7 天前 · 1252 次点击

    后端的文件大发龙虎下载 ,不同的 mvc 框架,处理是不同的,有些麻烦,因此大发龙虎我 对于数据大发龙虎下载 ,大发龙虎我 偏向于先弄到 web 前端,然后用过 web 前端的 把 js 数据,例如 把 js 的 json 数据 转成文件大发龙虎下载 ,例如 excel,txt,pdf 。

    对于这方面,各位知道哪些呢,对于表格数据的大发龙虎下载 ,除了把表格转 excel,还有直接定制 html 内容转成 pdf 大发龙虎下载 的么?

    第 1 条附言  ·  6 天前
    假若大发龙虎我 有一个比较复杂 json 数据(有键值对,也有集合),在前端 js 环境中,大发龙虎我 要把这个 json 数据进行可自定义的可视化显示(通过模板引擎以及模板代码,将 json 的数据可视化成带有文字行段落和表格的内容,比如 html 的内容,或者是 markdown 格式的内容),然后在把内容显示的效果转化成单个文件( html 或 md 文件)大发龙虎下载 到大发龙虎本地 ,在大发龙虎本地 可通过浏览器或者是 markdown 大发龙虎软件 查看。这个 js 能做到么?
    15 条回复    2020-05-23 08:05:15 +08:00
    lululau
        1
    lululau   7 天前 via iPhone
    导出数据就 csv 吧,别惯那些臭毛病
    jydeng
        2
    jydeng   7 天前
    html => canvas => pdf
    html2canvas 、jspdf 坑多,要谨慎。
    dixeran
        3
    dixeran   7 天前 via Android
    写 @media print 样式,然后调用浏览器的打印
    sadfQED2
        4
    sadfQED2   6 天前 via Android
    csv +1
    tctc4869
        5
    tctc4869   6 天前
    @jydeng 问一下,如果要把 html 弄的好看点,可能得引用插件,在转成单个 pdf 文件,这个在 js 里有什么方式可以实现?
    tctc4869
        6
    tctc4869   6 天前
    @tctc4869
    @jydeng

    比如大发龙虎我 要把引用一些 js 和 css 插件,依据 url,在生成 html,填入引用,然后转成 pdf 或单个文件,这个有什么好的方式么?
    jydeng
        7
    jydeng   6 天前
    @tctc4869 可以,html2Canvas 就是把大发龙虎你 看到的页面转成 canvas.
    SilentDepth
        8
    SilentDepth   6 天前
    文本类的数据转成 Blob 然后 createObjectURL 就可以交给 <a> 大发龙虎下载 了。

    其他复杂类型的先用大发龙虎工具 库封装( xlsx.js 、pdf.js 等),然后同样转成 Blob 再大发龙虎下载 。

    Canvas 的话,可以考虑 Pico,质量比 html2canvas 高很多。
    tctc4869
        10
    tctc4869   6 天前
    @SilentDepth 问一下,假若大发龙虎我 有一个比较复杂 json 数据(有键值对,也有集合),在前端 js 环境中,大发龙虎我 要把这个 json 数据进行可自定义的可视化显示(通过模板引擎以及模板代码,将 json 的数据可视化成带有文字行段落和表格的内容),然后在把内容显示的效果转化成单个文件( html 或 md 文件)大发龙虎下载 到大发龙虎本地 ,在大发龙虎本地 可通过浏览器或者是 markdown 大发龙虎软件 查看。这个 js 能做到么?
    SilentDepth
        11
    SilentDepth   6 天前
    @tctc4869 #10 如果是转化成文本数据( HTML 、MD ),把 JSON 看做 AST,其实就是个 Transform 的过程,拼装好目标字符串就行了。
    tctc4869
        12
    tctc4869   6 天前
    @SilentDepth
    如果有引用的图片和引用的 js 和 css 资源,要怎么办?把这些大发龙虎下载 到大发龙虎本地 也是可以,
    但大发龙虎我 要想要大发龙虎下载 的时候都装进一个文件里,这个要在 js 里要怎么弄,有演示连接么。
    SilentDepth
        13
    SilentDepth   6 天前
    @tctc4869 #12 压缩,例如用 jszip 。
    lblblong
        14
    lblblong   6 天前
    Xezzon
        15
    Xezzon   6 天前 via Android
    function down(data) {
    let download = document.createElement("a")
    download.href = "data:text/json;utf-8," + JSON.stringify(data)
    download.download = "文件名.json"
    download.click()
    }
    大发龙虎关于   ·   FAQ   ·   API   ·   大发龙虎大发龙虎我 们 的愿景   ·   广告投放   ·   感谢   ·   实用小大发龙虎工具   ·   4731 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 03:09 · PVG 11:09 · LAX 20:09 · JFK 23:09
    ♥ Do have faith in what you're doing.