Vue中util的工具函數(shù)實例詳解
更新時間:2019年07月08日 09:21:22 作者:yang
本文通過實例代碼給大家介紹了Vue中util的工具函數(shù),代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
Vue中util的工具函數(shù),下面通過實例代碼給大家介紹的非常詳細,具體代碼如下所示:
// 防抖函數(shù) function debounce (fn, wait) { let t return () => { let context = this let args = arguments if (t) clearTimeout(t) t = setTimeout(() => { fn.apply(context, args) }, wait) } } function flatten (arr) { // 數(shù)組扁平化 return arr.reduce((result, item) => { return result.concat(Array.isArray(item) ? flatten(item) : item) }, []) } function handleMulitePerson (sPerson) { console.log(44, sPerson.split(',')) if (typeof sPerson == 'string') { let personArr = [] sPerson.split(',').forEach(item => { let obj = { userCode: item.split('/')[0], userName: item.split('/')[1] } personArr.push(obj) }) return personArr } } function uniqueArray (array, key) { // json數(shù)組根據(jù)key去重 var result = [array[0]] for (var i = 1; i < array.length; i++) { var item = array[i] var repeat = false for (var j = 0; j < result.length; j++) { if (item[key] == result[j][key]) { repeat = true break } } if (!repeat) { result.push(item) } } return result } function setSessionStorage (key, val) { if (typeof (val) == 'object') { sessionStorage.setItem(key, JSON.stringify(val)) } else { sessionStorage.setItem(key, val) } } function getSessionStorage (key) { return sessionStorage.getItem(key) } function removeStorage (key) { sessionStorage.removeItem(key) } function urlParams () { // 獲取鏈接參數(shù) var str = location.search.length > 0 ? location.search.substring(1) : '' var items = str.length ? str.split('&') : [] var args = {} var item = null var name = null var value = null for (let i = 0, len = items.length; i < len; i++) { item = items[i].split('=') name = decodeURIComponent(item[0]) value = decodeURIComponent(item[1]) if (name.length) { args[name] = value } }; return args } function urlAfterParams () { var str = window.location.hash.length > 0 ? window.location.hash.substring(window.location.hash.indexOf('?') + 1) : '' var items = str.indexOf('&') > 0 ? str.split('&') : str.split('?') var args = {} var item = null var name = null var value = null for (let i = 0, len = items.length; i < len; i++) { item = items[i].split('=') name = decodeURIComponent(item[0]) value = decodeURIComponent(item[1]) if (name.length) { args[name] = value } }; return args } function parseParams (url) { url = decodeURIComponent(url) var params = {} var idx = url.indexOf('?') if (idx > 0) { var queryStr = url.substring(idx + 1) if (queryStr.length > 0) { var arr = queryStr.split('&') for (let i = 0; i < arr.length; i++) { var pair = arr[i].split('=') if (pair.length == 2 && pair[0].length > 0) { params[pair[0]] = pair[1] } } } } return params } /** 選人下拉框數(shù)據(jù):username(userCode) */ function getSelectUserName (userName, userCode) { return userName + '(' + userCode + ')' } function getSelectLoginUser () { var userInfo = getLoginUserInfo() return getSelectUserName(userInfo.userName, userInfo.userId) } function getUserNameBySelectUserName (userName) { let i = userName.indexOf('(') return userName.substring(0, i) } /** 登錄用戶信息 userId userName mobileNo @returns {any} */ function getLoginUserInfo () { return JSON.parse(localStorage.getItem('userInfo')) } function getLoginUserCode () { return JSON.parse(localStorage.getItem('userInfo')).userId } export default { getNyr, getYDate, setSessionStorage, urlParams, urlAfterParams, parseParams, debounce, handleMulitePerson, uniqueArray, flatten, getSessionStorage, removeStorage, getSelectUserName, getSelectLoginUser, getLoginUserInfo, getLoginUserCode, getUserNameBySelectUserName }
總結(jié)
以上所述是小編給大家介紹的Vue中util的工具函數(shù)實例詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
vue-simple-verify實現(xiàn)滑動驗證碼功能
登錄頁面經(jīng)常會需要滑動驗證碼的情況,使用vue插件vue-simple-verify就可以輕松實現(xiàn),下面小編給大家分享vue-simple-verify實現(xiàn)滑動驗證碼功能,感興趣的朋友一起看看吧2024-06-06vue實現(xiàn)多組關(guān)鍵詞對應(yīng)高亮顯示功能
最近小編遇到這樣的問題,多組關(guān)鍵詞,這里實現(xiàn)了關(guān)鍵詞的背景色與匹配值的字體顏色值相同,下面通過定義關(guān)鍵詞匹配改變字體顏色,本文通過實例代碼給大家介紹的非常詳細,需要的朋友參考下吧2019-07-07vue項目中如何實現(xiàn)element-ui組件按需引入
這篇文章主要介紹了vue項目中如何實現(xiàn)element-ui組件按需引入,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-05-05