VUE 之_this.da 和 this
2024-09-04 16:42:30
作者:张艳涛
日期:2020-07-29
this用在第一层,如果在JS第3二层,要用 _this
importfxx(obj) { let _this = this;
let inputDOM = this.$refs.inputer; // 通过DOM取文件数据
this.file = event.currentTarget.files[0];
var rABS = false; //是否将文件读取为二进制字符串
var f = this.file;
var reader = new FileReader();
//if (!FileReader.prototype.readAsBinaryString) {
FileReader.prototype.readAsBinaryString = function(f) {
var binary = "";
var rABS = false; //是否将文件读取为二进制字符串
var pt = this;
var wb; //读取完成的数据
var outdata;
var reader = new FileReader();
reader.onload = function(e) {
var bytes = new Uint8Array(reader.result);
var length = bytes.byteLength;
for(var i = 0; i < length; i++) {
binary += String.fromCharCode(bytes[i]);
}
var XLSX = require('xlsx');
if(rABS) {
wb = XLSX.read(btoa(fixdata(binary)), { //手动转化
type: 'base64'
}); } else {
wb = XLSX.read(binary, {
type: 'binary'
});
}
// outdata就是你想要的东西 excel导入的数据
outdata = XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]]);
console.log('未处理的原始数据如下:');
console.log(outdata);
// excel 数据再处理
let arr = []
outdata.map(v => {
let obj = {}
obj.s1 = v['员工号']
obj.s2 = v['员工姓名']
obj.s3 = v['员工邮箱']
obj.s4 = v['部门编号']
obj.s5 = v['部门名称']
obj.s6 = v['职位1']
obj.s7 = v['职位2']
obj.s8 = v['上级领导1']
obj.s9 = v['上级领导2']
arr.push(obj) })
_this.da=arr;
_this.dalen=arr.length;
console.log("this is a mark for list.vue line 242")
console.log( this.accountList);
this.zytloading=true;
_this.showtable2=true; }
reader.readAsArrayBuffer(f);
}
if(rABS) {
reader.readAsArrayBuffer(f);
} else {
reader.readAsBinaryString(f);
}
}
最新文章
- 使EditText不要在页面打开时自动获取焦点(因为软键盘会自动弹出)
- 一个小白App开发需要了解的基本技术
- windows下部署mongodb
- Dll的显式和隐式调用
- SpringMVC自定义视图 Excel视图和PDF视图
- 在VS2013中强制IIS Express应用程序池使用经典模式
- gulp-htmlmin压缩html
- jiulianhuan 快速幂--矩阵快速幂
- Linux常用命令_(文件操作)
- cocoa NSFileManager
- java.util.ResourceBundle
- 《程序员的思维修炼》摘抄start:2014年9月27日19:27:07
- 变焦控制ZoomControls
- linux系统常用快捷键
- 基于dijkstra算法求地铁站最短路径以及打印出所有的路径
- jQuery拓展简易快速实现触摸效果
- CentOS7 安装eclipse
- Lua版组合算法
- docker常用命令总结
- .Net Core应用框架Util介绍(四)