SSR就是一台服务器,可以利用 SSR 在远程的服务器上配置 SSR,使其能够成为 SSR 节点,这样本地电脑或者其它设备利用 SSR 节点实现 VPN 或者远程上网及游戏加速等方面。ShadowsocksR(简称 SSR)是 Shadowsocks 分支,在 Shadowsocks 的基础上增加了一些数据...
一、Visual Studio Code下载地址:https://code.visualstudio.com/微软在2015年4月30日Build 开发者大会上正式宣布了 Visual Studio Code 项目:一个运行于 Mac OS X、Windows和 Linux 之上的,针对于编写现代 Web 和云应用的跨平台源代码编辑器。Visual Stud...
exportOpera(res, fileName, flag) {
const self = this;
let content;
let blob;
if (Object.prototype.toString.call(res) === "[object Function]") {
content = res();
const fr = new FileReader();
blob = new Blob([content]);
fr.readAsText(blob);
fr.onload = function (e) {
const responseJSON = JSON.parse(e.target.result);
self.exportSwitch(responseJSON.resultCode, flag);
};
} else {
content = res;
blob = new Blob([content]);
if ("download" in document.createElement("a")) {
// 非IE下载
const elink = document.createElement("a");
elink.download = fileName;
elink.style.display = "none";
elink.href = URL.createObjectURL(blob);
document.body.appendChild(elink);
elink.click();
URL.revokeObjectURL(elink.href); // 释放URL 对象
document.body.removeChild(elink);
} else {
// IE10+下载
navigator.msSaveBlob(blob, fileName);
}
}
},
exportSwitch(resultCode, flag) {
if (flag === "exportLogData") {
resultCode === 10001 ?
this.alertNotify(false, {
text: "下载",
message: "系统异常"
}) :
this.redirectLogin();
}
},
redirectLogin() {
removeLocalStorage("smoke_session_token");
this.resetState();
this.$router.replace({
path: "/login",
query: {
redirect: this.$router.currentRoute.fullPath
}
});
this.$message.error("登录已失效,请重新登录!");
if (window.stompClient) {
window.stompClient.disconnect();
delete window.stompClient;
}
},
第一步:需要安装三个依赖
npm install -S file-saver xlsx (这里其实安装了2个依赖)
npm install -D script-loader
第二步:在main.js文件中全局导入挂载xlsx插件
// 导入excel插件
import XLSX from 'xlsx'
Vue.prototype.XLSX = XLSX
第三步:在src目录新建一个文件夹(名字随意),在这个文件夹里面放入2个JS文件分别是:Blob.js和Export2Excel.js,网上可百度下载。
第四步,需要的页面的template标签中开始写代码
第五步:然后在 methods: {}中配置方法,代码如下:
此时导入的功能就结束了,下面开始实现导出的功能
第一步,在template标签中写入导出的按钮,并绑定单击事件,代码如下:
第二步:在methods{}方法中写对应的方法
首先安装:
npm install vue-json-excel//表格导出
npm install vue-xlsx-table//表格导入
在vue的main.js文件中加入全局配置
//导入表格
import vueXlsxTable from 'vue-xlsx-table'
Vue.use(vueXlsxTable, {rABS: false})
//导出表格
import JsonExcel from 'vue-json-excel'
Vue.component('downloadExcel', JsonExcel)
主要代码如下
style="width: 200px"
value-format="yyyy-MM-dd"
v-model="searchMap.PlanDate"
type="date"
placeholder="计划发货日期"
>
class="export-excel-wrapper"
:data="list"
:fields="json_fields"
name="订单信息表.xls"
>
:data="list"
max-height="600"
border
style="width: 100%"
@selection-change="handleSelectionChange"
>
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10, 20, 50]"
:page-size="pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
>
核心导出代码如下
class = "export-excel-wrapper"
:data = "list"
:fields = "json_fields"
name = "filename.xls">
核心导入代码如下
相关的函数如下
export default {
data() {
return {
list: [], //表格数据来源
json_fields: {
货号: "GoodNo",
英文名称: "Enname",
中文名称: "Cnname",
Rcv: "Rcvs",
数量: "Nums",
托数: "Tnums",
合同哈: "Contract",
R_Cty: "RCty",
计划发货日期: "PlanDate",
实际发货日期: "RealDate",
Shp_Id: "ShpId"
},
json_meta: [
[
{
key: "charset",
value: "utf-8"
}
]
],
total: 0, // 总记录数
currentPage: 1, // 当前页码
pageSize: 10, // 每页显示10条数据
searchMap: {
// 条件查询绑定的条件值
Contract: "",
PlanDate: ""
},
multipleSelection:{}//表格多选数据
};
},
created() {
// 初始化获取列表数据
this.fetchData();
},
methods: {
//表格导入功能实现
handleSelectedFile(convertedData) {
let data = convertedData.body;
this.excelList = [];
data.forEach(item => {
let dataitem = {
GoodNo: item.货号,
Enname: item.英文名称,
Cnname: item.中文名称,
Rcvs: item.Rcv,
Nums: item.数量,
Tnums: item.托数,
Contract: item.合同哈,
RCty: item.R_Cty,
PlanDate: item.计划发货日期,
RealDate: item.实际发货日期,
ShpId: item.Shp_Id
};
this.excelList.push(dataitem);
});
console.log(this.excelList);
//this.excelList = JSON.stringify(this.excelList);
salesApi.orderexpolexcel(this.excelList).then(res => {
//这是我自己封装过的axios请求,按自己的发送请求就行了
if (res.data.result == true) {
this.$message({
message: res.data.message,
type: "success"
});
this.fetchData();
//我这里是在保存成功后请求了一遍列表接口,用来刷新列表
} else {
this.$message({
message: res.message,
type: "error"
});
}
});
},
}
一、安装 vue-json-excel 依赖
npm install vue-json-excel
二、初始化 vue-json-excel
import Vue from 'vue'
import JsonExcel from 'vue-json-excel'
Vue.component('downloadExcel', JsonExcel)
三、准备数据
在这里,我们需要准备两个数据:
表头名称:json_fields
表格数据:json_data
1、表头数据
json_fields: {
'Complete name': 'name',
'City': 'city',
'Telephone': 'phone.mobile',
'Telephone 2' : {
field: 'phone.landline',
callback: (value) => {
return `Landline Phone - ${value}`;
}
},
}
表头数据由一个 JSON OBJECT 组成,其中:
key:表头名称
value:对应数据名称(看不明白?不要急,继续往下看)
2、表格数据
json_fields: {
'Complete name': 'name',
'City': 'city',
'Telephone': 'phone.mobile',
'Telephone 2' : {
field: 'phone.landline',
callback: (value) => {
return `Landline Phone - ${value}`;
}
},
},
json_data: [
{
'name': 'Tony Peña',
'city': 'New York',
'country': 'United States',
'birthdate': '1978-03-15',
'phone': {
'mobile': '1-541-754-3010',
'landline': '(541) 754-3010'
}
},
{
'name': 'Thessaloniki',
'city': 'Athens',
'country': 'Greece',
'birthdate': '1987-11-23',
'phone': {
'mobile': '+1 855 275 5071',
'landline': '(2741) 2621-244'
}
}
],
表格数据,由一个 JSON ARRAY 组成,其每一个 ITEM 又由一个 JSON OBJECT 组成,其中:
key:对应数据名称(看明白对应关系了吧)
value:数据
好了,现在我们可以先去准备下我们的数据,为稍后我们即将要做的导出作准备
四、准备导出
class = "btn btn-default"
:data = "json_data"
:fields = "json_fields"
worksheet = "My Worksheet"
type = "csv"
name = "filename.xls">
Download Excel (you can customize this with html code!)
运行项目,点击后即可导出一个 .csv 文件
一、如何导入
1.文件选择,限制为 .xls, .xlsx 文件,获取相关文件数据;
2.默认取的是导入表格文件的第一张 工作表;
3.根据表头的文字,去匹配相对应的字段,并添加到table中 (当然,你导入的表格格式要和你的表格格式对应呢 ~~);
二、如何导出
相关问题推荐
相对前几年来说,要高上不少了,毕竟入行的人也是越来越多了,基础的工作对应想要参与的人群基数越来越大,但是对于高端人才的需求还是很多,人才还是相对稀缺性的。所以,想要学web或者其他技术也一样,别等,别观望。web前端就业方向特别多包括web前端开发...
相对定位和绝对定位是定位的两种表现形式,区别如下:一、主体不同1、相对定位:是设置为相对定位的元素框会偏移某个距离。2、绝对定位:absolute 脱离文档流,通过 top,bottom,left,right 定位。二、特点不同1、相对定位:在使用相对定位时,无论是否进行移...
抓包(packet capture)就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全。抓包也经常被用来进行数据截取等。抓包可以通过抓包工具来查看网络数据包内容。通过对抓获的数据包进行分析,可以得到有用的信息。目前流行的...
常用的前端框架有Bootstrap框架、React框架、Vue框架、Angular框架、Foundation框架等等
前端是目的就业前景非常不错的一个计算机技术,但是自学的话还是有一定难度的,网络上自学是碎片化的,同时互联网技术跟新换代快,自己的话比较吃力也学习不到最新的技术。
SSR就是一台服务器,可以利用 SSR 在远程的服务器上配置 SSR,使其能够成为 SSR 节点,这样本地电脑或者其它设备利用 SSR 节点实现 VPN 或者远程上网及游戏加速等方面。ShadowsocksR(简称 SSR)是 Shadowsocks 分支,在 Shadowsocks 的基础上增加了一些数据...
计算机培训方向比较多,建议找适合自己的方向选择培训编程类:JAVA、WEB、Python、C/C++、C#等测试类:软件测试运维类:云计算、网络安全设计类:UI设计、3D建模等
1、代码判断xAxis: {type: 'time',splitLine: {show: false},interval: 3600, // 设置x轴时间间隔axisLabel: {formatter: function(value, index) {return liangTools.unix2hm(value)}}},首先要把xAxis 显示类型设置成time,然后设置对应X轴......
HTML5 + CSS + JavaScript 开发 跨平台重用代码
采用rem单位自动响应,并提供独有栅格化系统快速定义宽高、边距节省css代码量,同时总结各大型移动端网页,提供一套ui颜色搭配规范,尺寸规范,字体规范等。
iView UI、ioni、SUI
jQTouch
如果只是普通的移动端用vue react 或者dva 如果是要编译成小程序什么的或者混生 就用uni-app(对应vue语法)taro(对应react) 或者纯原生 这个没有限制的,自己怎么舒服怎么来
因为可以运用在网页和小程序的开饭中,而且开源,用着便宜,企业都很喜欢
一、Visual Studio Code下载地址:https://code.visualstudio.com/微软在2015年4月30日Build 开发者大会上正式宣布了 Visual Studio Code 项目:一个运行于 Mac OS X、Windows和 Linux 之上的,针对于编写现代 Web 和云应用的跨平台源代码编辑器。Visual Stud...
jQuery自带淡入淡出效果 https://www.w3school.com.cn/jquery/jquery_fade.asp 看看这个