vue+jsonp编写可导出html的模版,可通过外部改json动态更新页面内容

效果

导出后文件结果如图所示,点击Index.html即可查看页面,页面所有数据由report.json控制,修改report.json内容即可改变index.html展示内容

具体实现

1. 编写数据存储的json文件

index.html所在的public页面新建report.json文件,用loadReportJson()包裹json内容

javascript 复制代码
// report.json
loadReportJson({
	"test":111
})

2. 在需要导出的页面中编写json加载

在需要导出的页面中使用jsonp,加载report.json的数据

javascript 复制代码
// index.vue
// 主体页面加载json方式如下
mounted() {
  const url = './report.json';
  jsonp(url, 'loadReportJson').then((data) => {
    this.reportInfo = data;
  });
},

与后端配合

注:此方式的导出适用于报告模版等模版场景,不适用于自定义页面排版等场景

  • 在vue项目中导出dist文件给后端
  • 在需要导出的地方点击下载,由后端计算数据后填入report.json文件后下载文件
相关推荐
张雨zy2 分钟前
Pinia 与 TypeScript 完美搭配:Vue 应用状态管理新选择
vue.js·ubuntu·typescript
dly_blog16 分钟前
Vue 响应式陷阱与解决方案(第19节)
前端·javascript·vue.js
console.log('npc')42 分钟前
Table,vue3在父组件调用子组件columns列的方法展示弹窗文件预览效果
前端·javascript·vue.js
C_心欲无痕2 小时前
vue3 - markRaw标记为非响应式对象
前端·javascript·vue.js
熬夜敲代码的小N2 小时前
Vue (Official)重磅更新!Vue Language Tools 3.2功能一览!
前端·javascript·vue.js
辰同学ovo2 小时前
Vue 2 路由指南:从入门到实战优化
前端·vue.js
小彭努力中2 小时前
1.在 Vue 3 中使用 Cesium 快速展示三维地球
前端·javascript·vue.js·#地图开发·#cesium·#vue3
一字白首3 小时前
Vue3 进阶,新特性 defineOptions/defineModel+Pinia 状态管理全解析
前端·javascript·vue.js
Sylus_sui3 小时前
Vue2 与 Vue3 数据双向绑定:区别与原理详解
前端·javascript·vue.js
Ashley_Amanda4 小时前
JavaScript 中 JSON 的处理方法
前端·javascript·json