执行过npm install命令的vue-element-admin源码
康凯
2022-05-20 aa4c235a8ca67ea8b731f90c951a465e92c0a865
1
{"remainingRequest":"D:\\源码\\vue-element-admin-master\\node_modules\\babel-loader\\lib\\index.js!D:\\源码\\vue-element-admin-master\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\源码\\vue-element-admin-master\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\源码\\vue-element-admin-master\\src\\views\\zip\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\源码\\vue-element-admin-master\\src\\views\\zip\\index.vue","mtime":1649647926000},{"path":"D:\\源码\\vue-element-admin-master\\babel.config.js","mtime":1649647926000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IF9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIGZyb20gIkQ6L1x1NkU5MFx1NzgwMS92dWUtZWxlbWVudC1hZG1pbi1tYXN0ZXIvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2ludGVyb3BSZXF1aXJlV2lsZGNhcmQuanMiOwppbXBvcnQgX2FzeW5jVG9HZW5lcmF0b3IgZnJvbSAiRDovXHU2RTkwXHU3ODAxL3Z1ZS1lbGVtZW50LWFkbWluLW1hc3Rlci9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vYXN5bmNUb0dlbmVyYXRvci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLm9iamVjdC50by1zdHJpbmcuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5zdHJpbmcuaXRlcmF0b3IuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy93ZWIuZG9tLWNvbGxlY3Rpb25zLml0ZXJhdG9yLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkubWFwLmpzIjsKaW1wb3J0ICJyZWdlbmVyYXRvci1ydW50aW1lL3J1bnRpbWUuanMiOwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwppbXBvcnQgeyBmZXRjaExpc3QgfSBmcm9tICdAL2FwaS9hcnRpY2xlJzsKZXhwb3J0IGRlZmF1bHQgewogIG5hbWU6ICdFeHBvcnRaaXAnLAogIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7CiAgICByZXR1cm4gewogICAgICBsaXN0OiBudWxsLAogICAgICBsaXN0TG9hZGluZzogdHJ1ZSwKICAgICAgZG93bmxvYWRMb2FkaW5nOiBmYWxzZSwKICAgICAgZmlsZW5hbWU6ICcnCiAgICB9OwogIH0sCiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHsKICAgIHRoaXMuZmV0Y2hEYXRhKCk7CiAgfSwKICBtZXRob2RzOiB7CiAgICBmZXRjaERhdGE6IGZ1bmN0aW9uIGZldGNoRGF0YSgpIHsKICAgICAgdmFyIF90aGlzID0gdGhpczsKCiAgICAgIHJldHVybiBfYXN5bmNUb0dlbmVyYXRvciggLyojX19QVVJFX18qL3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUoKSB7CiAgICAgICAgdmFyIF95aWVsZCRmZXRjaExpc3QsIGRhdGE7CgogICAgICAgIHJldHVybiByZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlJChfY29udGV4dCkgewogICAgICAgICAgd2hpbGUgKDEpIHsKICAgICAgICAgICAgc3dpdGNoIChfY29udGV4dC5wcmV2ID0gX2NvbnRleHQubmV4dCkgewogICAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICAgIF90aGlzLmxpc3RMb2FkaW5nID0gdHJ1ZTsKICAgICAgICAgICAgICAgIF9jb250ZXh0Lm5leHQgPSAzOwogICAgICAgICAgICAgICAgcmV0dXJuIGZldGNoTGlzdCgpOwoKICAgICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgICBfeWllbGQkZmV0Y2hMaXN0ID0gX2NvbnRleHQuc2VudDsKICAgICAgICAgICAgICAgIGRhdGEgPSBfeWllbGQkZmV0Y2hMaXN0LmRhdGE7CiAgICAgICAgICAgICAgICBfdGhpcy5saXN0ID0gZGF0YS5pdGVtczsKICAgICAgICAgICAgICAgIF90aGlzLmxpc3RMb2FkaW5nID0gZmFsc2U7CgogICAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBjYXNlICJlbmQiOgogICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0LnN0b3AoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIF9jYWxsZWUpOwogICAgICB9KSkoKTsKICAgIH0sCiAgICBoYW5kbGVEb3dubG9hZDogZnVuY3Rpb24gaGFuZGxlRG93bmxvYWQoKSB7CiAgICAgIHZhciBfdGhpczIgPSB0aGlzOwoKICAgICAgdGhpcy5kb3dubG9hZExvYWRpbmcgPSB0cnVlOwogICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKGZ1bmN0aW9uICgpIHsKICAgICAgICByZXR1cm4gX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQocmVxdWlyZSgnQC92ZW5kb3IvRXhwb3J0MlppcCcpKTsKICAgICAgfSkudGhlbihmdW5jdGlvbiAoemlwKSB7CiAgICAgICAgdmFyIHRIZWFkZXIgPSBbJ0lkJywgJ1RpdGxlJywgJ0F1dGhvcicsICdSZWFkaW5ncycsICdEYXRlJ107CiAgICAgICAgdmFyIGZpbHRlclZhbCA9IFsnaWQnLCAndGl0bGUnLCAnYXV0aG9yJywgJ3BhZ2V2aWV3cycsICdkaXNwbGF5X3RpbWUnXTsKICAgICAgICB2YXIgbGlzdCA9IF90aGlzMi5saXN0OwoKICAgICAgICB2YXIgZGF0YSA9IF90aGlzMi5mb3JtYXRKc29uKGZpbHRlclZhbCwgbGlzdCk7CgogICAgICAgIHppcC5leHBvcnRfdHh0X3RvX3ppcCh0SGVhZGVyLCBkYXRhLCBfdGhpczIuZmlsZW5hbWUsIF90aGlzMi5maWxlbmFtZSk7CiAgICAgICAgX3RoaXMyLmRvd25sb2FkTG9hZGluZyA9IGZhbHNlOwogICAgICB9KTsKICAgIH0sCiAgICBmb3JtYXRKc29uOiBmdW5jdGlvbiBmb3JtYXRKc29uKGZpbHRlclZhbCwganNvbkRhdGEpIHsKICAgICAgcmV0dXJuIGpzb25EYXRhLm1hcChmdW5jdGlvbiAodikgewogICAgICAgIHJldHVybiBmaWx0ZXJWYWwubWFwKGZ1bmN0aW9uIChqKSB7CiAgICAgICAgICByZXR1cm4gdltqXTsKICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9CiAgfQp9Ow=="},{"version":3,"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCA;AAEA;EACAA,iBADA;EAEAC,IAFA,kBAEA;IACA;MACAC,UADA;MAEAC,iBAFA;MAGAC,sBAHA;MAIAC;IAJA;EAMA,CATA;EAUAC,OAVA,qBAUA;IACA;EACA,CAZA;EAaAC;IACAC,SADA,uBACA;MAAA;;MAAA;QAAA;;QAAA;UAAA;YAAA;cAAA;gBACA;gBADA;gBAAA,OAEAC,WAFA;;cAAA;gBAAA;gBAEAR,IAFA,oBAEAA,IAFA;gBAGA;gBACA;;cAJA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IAKA,CANA;IAOAS,cAPA,4BAOA;MAAA;;MACA;MACA;QAAA;MAAA;QACA;QACA;QACA;;QACA;;QACAC;QACA;MACA,CAPA;IAQA,CAjBA;IAkBAC,UAlBA,sBAkBAC,SAlBA,EAkBAC,QAlBA,EAkBA;MACA;QAAA;UAAA;QAAA;MAAA;IACA;EApBA;AAbA","names":["name","data","list","listLoading","downloadLoading","filename","created","methods","fetchData","fetchList","handleDownload","zip","formatJson","filterVal","jsonData"],"sourceRoot":"src/views/zip","sources":["index.vue"],"sourcesContent":["<template>\n  <div class=\"app-container\">\n    <el-input v-model=\"filename\" placeholder=\"Please enter the file name (default file)\" style=\"width:300px;\" prefix-icon=\"el-icon-document\" />\n    <el-button :loading=\"downloadLoading\" style=\"margin-bottom:20px;\" type=\"primary\" icon=\"el-icon-document\" @click=\"handleDownload\">\n      Export Zip\n    </el-button>\n    <el-table v-loading=\"listLoading\" :data=\"list\" element-loading-text=\"拼命加载中\" border fit highlight-current-row>\n      <el-table-column align=\"center\" label=\"ID\" width=\"95\">\n        <template slot-scope=\"scope\">\n          {{ scope.$index }}\n        </template>\n      </el-table-column>\n      <el-table-column label=\"Title\">\n        <template slot-scope=\"scope\">\n          {{ scope.row.title }}\n        </template>\n      </el-table-column>\n      <el-table-column label=\"Author\" width=\"95\" align=\"center\">\n        <template slot-scope=\"scope\">\n          <el-tag>{{ scope.row.author }}</el-tag>\n        </template>\n      </el-table-column>\n      <el-table-column label=\"Readings\" width=\"115\" align=\"center\">\n        <template slot-scope=\"scope\">\n          {{ scope.row.pageviews }}\n        </template>\n      </el-table-column>\n      <el-table-column align=\"center\" label=\"Date\" width=\"220\">\n        <template slot-scope=\"scope\">\n          <i class=\"el-icon-time\" />\n          <span>{{ scope.row.display_time }}</span>\n        </template>\n      </el-table-column>\n    </el-table>\n  </div>\n</template>\n\n<script>\nimport { fetchList } from '@/api/article'\n\nexport default {\n  name: 'ExportZip',\n  data() {\n    return {\n      list: null,\n      listLoading: true,\n      downloadLoading: false,\n      filename: ''\n    }\n  },\n  created() {\n    this.fetchData()\n  },\n  methods: {\n    async fetchData() {\n      this.listLoading = true\n      const { data } = await fetchList()\n      this.list = data.items\n      this.listLoading = false\n    },\n    handleDownload() {\n      this.downloadLoading = true\n      import('@/vendor/Export2Zip').then(zip => {\n        const tHeader = ['Id', 'Title', 'Author', 'Readings', 'Date']\n        const filterVal = ['id', 'title', 'author', 'pageviews', 'display_time']\n        const list = this.list\n        const data = this.formatJson(filterVal, list)\n        zip.export_txt_to_zip(tHeader, data, this.filename, this.filename)\n        this.downloadLoading = false\n      })\n    },\n    formatJson(filterVal, jsonData) {\n      return jsonData.map(v => filterVal.map(j => v[j]))\n    }\n  }\n}\n</script>\n"]}]}