數(shù)組轉(zhuǎn)成字符串 join(',')
let Arry= ['待簽收', '已簽收', '已退回', '未簽收', '已發(fā)送', '簽收中', '被退回', '以辦結(jié)', '已經(jīng)撤回']
let strName = ' '
retrun strName = Arry.join(',')
//待簽收,已簽收,已退回,未簽收,已發(fā)送,簽收中,被退回,以辦結(jié),已經(jīng)撤回
處理ie問(wèn)題要做的兼容
場(chǎng)景:上傳組件在ie的時(shí)候 會(huì)有點(diǎn)擊穿透的效果。 做法就是干掉默認(rèn)事件
/* 處理ie 點(diǎn)擊查看會(huì)調(diào)上傳文件的問(wèn)題 */
if(!!window.ActiveXObject || "ActiveXObject" in window){
console.log('這家伙是IE啊')
window.event.cancelBubble = true
}
格式化時(shí)間
場(chǎng)景:后臺(tái)傳給你的時(shí)間戳 你要做對(duì)應(yīng)的業(yè)務(wù)處理 例如當(dāng)天時(shí)間要顯示當(dāng)天哨坪。 (剛剛分尸,之前多少分鐘前發(fā)送一樣的原理)image.png
代碼如下(rawTime目的時(shí)間,sysTime當(dāng)前時(shí)間):
/*格式化時(shí)間*/
getCustomTime(rawTime, sysTime){
if (!rawTime) {
return "";
}
sysTime = sysTime || unifiedOfficeLib.moment.formatTime(Date.now(), "YYYY-MM-DD hh:mm");
let timeInfo = "";
let tempRawTime = rawTime.split(" ");
let tempSysTime = sysTime.split(" ");
if (tempRawTime.length !== 2 && tempSysTime.length !== 2) {
return "";
}
/*同一天*/
if (tempRawTime[0] === tempSysTime[0]) {
timeInfo = "今天" + tempRawTime[1].substring(0, 5);
} else {
let year = tempRawTime[0].substring(0, 4);
let month = tempRawTime[0].substring(5, 7);
let day = tempRawTime[0].substring(8, 10);
/*非同一年*/
if (year < tempSysTime[0].substring(0, 4)) {
timeInfo = tempRawTime[0].replace(/-/g, "/");
} else {
timeInfo = Number(month) + "月" + Number(day) + "日";
}
}
return timeInfo;
}
上傳文件vue的插件 vue-upload-web 再有一些簡(jiǎn)單上傳前的處理梗劫; 效果如下:(ps它喵的什么產(chǎn)品 偏要上傳也能拖拉拽功能享甸,氣死人∈崆龋花里胡哨)
image.png
dom:
<vue-upload-web
:url="uploadUrl"
:upload-button="uploadBtn"
:accept="docAccept"
:formData="formData"
@success="handleIEUpDocSuccess"
@before="beforeDocUpload"
@error="handleError"
@complete="handleComplete"
></vue-upload-web>
js:
/**@augments file 待上傳的正文文件對(duì)象
* @description 正文上傳前執(zhí)行蛉威,檢查文件類型,若不符合則進(jìn)行提示走哺,正文支持pdf/txt/doc/docx四種文件類型蚯嫌,文件大小不能超過(guò)40M
*/
beforeDocUpload(file) {
let {name, size} = file;
// 驗(yàn)證size
if (size / 1014 / 1024 > 40) {
this.docErrMsg = '上傳的文件不要超過(guò)40M';
this.docUpDirty = true;
return false;
}
let arr = name.split(".");
let arrLen = arr.length
let formatStr = (arr[arrLen - 1]).toLowerCase()
if (
arr.length < 2 ||
["pdf", "txt", "doc", "docx", 'ofd'].indexOf(formatStr) === -1
) {
this.docErrMsg = '正文只支持pdf、txt、doc择示、docx束凑、ofd等格式,請(qǐng)重新上傳';
this.docUpDirty = true;
return false;
}
this.docUpDirty = false;
return true;
},
上傳文件之后名稱需求處理
場(chǎng)景:檢查附件是否可以查看栅盲,如果為zip汪诉,ofd和rar則只能下載(wps 不支持閱讀的東西)
dom就走 v-if="checkPreview(doc_name)"
image.png
/**@augments name 文件名
* @description 檢查附件是否可以查看,如果為zip和rar則只能下載
*/
checkPreview(name) {
let nameLength = name.split('.').length
if (['zip', 'rar', 'ofd'].indexOf(name.split('.')[nameLength - 1]) !== -1) {
return false
}
return true
}