其他分享
首页 > 其他分享> > vue2 使用x2js json转换成xml

vue2 使用x2js json转换成xml

作者:互联网

安装:

在项目终端运行以下命令

cnpm install x2js --save

引用:

// 引入模块
import x2js from 'x2js'

全部代码:

 

<template>   
    <el-button type="primary" @click="exportExcel">导出</el-button>
</template>


<script lang="ts">
import { defineComponent, ref  } from 'vue'
import { ElMessage } from 'element-plus'
export default defineComponent({
     data() {
         return {
            testdata: [
            {
              "noticeId":345646,
              "satName":"ZOHREH-2",
              "country":"IRN",
              "freqMin":456.0,
              "freqMax":456.0,
              "beamInfoList":
                  [
                    {
                      "beamName":"RS49",
                      "freqMin":3456.0,
                      "freqMax":654.0,
                      "groupInfoList":
                          [
                            {
                              "groupId":567.34,
                              "freqMin":768.0,
                              "freqMax":678.0,
                              "pwrMax":1.0
                            },
                            {
                              "groupId":10600362,
                              "freqMin":11450.0,
                              "freqMax":11700.0,
                              "pwrMax":2.0
                            },
                            {
                              "groupId":10600363,
                              "freqMin":14000.0,
                              "freqMax":14500.0,
                              "pwrMax":3.0
                            }
                          ]
                    },
                 ]
            }]
         }
     },
    methods: {

exportExcel() {
let x2js = new X2js();
let groupdata = { doc: this.testdata };
//groupdata必须只有一个跟节点noticeData不然导出xml时会报错
// let obj = {
// doc: groupdata,
// };
// 调用x2js 将我们的json数据转换成xml数据格式
console.log(x2js);
let xml = x2js.js2xml(groupdata);
xml = `<?xml version="1.0" ?>` + xml;
console.log(xml);
// 下面就是我们想要的xml文件的数据格式了
// 这里会生成一个url
let url = window.URL.createObjectURL(
new Blob([xml], { type: "text/xml;charset=utf-8" })
);


// 然后就可以创建a标签 最后下载下来了
let link = document.createElement("a");
// 不显示链接
link.style.display = "none";
link.href = url;
// 设置链接属性
link.setAttribute("download", "导出");
//点击链接
document.body.appendChild(link);
link.click();
// 删除连接
document.body.removeChild(link);
},

})

 

标签:xml,freqMin,json,freqMax,let,vue2,link,x2js
来源: https://www.cnblogs.com/bisiyuan/p/16524884.html