摘要:網(wǎng)絡(luò)請(qǐng)求工具請(qǐng)求,服務(wù)器地址配置路徑工具模板渲染工具字段驗(yàn)證通用提示統(tǒng)一跳轉(zhuǎn)定義模塊化對(duì)象網(wǎng)絡(luò)數(shù)據(jù)請(qǐng)求功能存入對(duì)象從中取方法,如果沒(méi)有默認(rèn)方法默認(rèn)空數(shù)據(jù)類(lèi)型請(qǐng)求時(shí)需要的數(shù)據(jù)請(qǐng)求成功時(shí)的方法處理請(qǐng)求成功無(wú)登錄狀態(tài),需強(qiáng)制登錄請(qǐng)求數(shù)據(jù)錯(cuò)誤獲取服
網(wǎng)絡(luò)請(qǐng)求工具(Ajax請(qǐng)求,服務(wù)器地址配置)
URL路徑工具
模板渲染工具
字段驗(yàn)證&&通用提示
統(tǒng)一跳轉(zhuǎn)
"use strict" var conf = {serverHost : ""}; // 定義模塊化對(duì)象 var _mm = { // 網(wǎng)絡(luò)數(shù)據(jù)請(qǐng)求功能 request : function(param) { var _this = this; //存入mm對(duì)象 $.ajax({ type : param.method || "get", // 從param中取方法,如果沒(méi)有默認(rèn)get方法 url : param.url || "", // 默認(rèn)空 dataType : param.type || "json" // 數(shù)據(jù)類(lèi)型 data : param.data || "", // 請(qǐng)求時(shí)需要的數(shù)據(jù) // 請(qǐng)求成功時(shí)的方法處理 success : function(res) { // 請(qǐng)求成功 if(0 === res.status) { typeof param.success === "function" && param.success(res.data, res.msg); } // 無(wú)登錄狀態(tài),需強(qiáng)制登錄 else if (10 === res.status) { _this.doLogin(); } // 請(qǐng)求數(shù)據(jù)錯(cuò)誤 else if(1 === res.status) { typeof param.error=== "function" && param.error(res.msg); } }, error : function(err) { typeof param.error=== "function" && param.error(err.statusText); } }); }, // 獲取服務(wù)器地址 getServerUrl : function(path) { return conf.serverHost + path; }, // 獲取url參數(shù) getUrlParam : function(name) { // happymall.com/product/list?keyword=xxx&page=1 // 提取keyword步驟:1.截取?后參數(shù);2.按&分開(kāi)每一組keyword與value // 定義正則表達(dá)式 var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); // window的location對(duì)象;search得到的是url中query部分(?keyword=xxx&page=1);substr()返回一個(gè)從指定位置開(kāi)始的指定長(zhǎng)度的子字符串,設(shè)置為1,是為了把url中的?號(hào)去掉() var result = window.location.search.substr(1).match(reg); return result ? decodeURIComponent(result[2]) : null; }, // 渲染html模板 renderHtml : function(htmlTemplate, data) // 傳入模板和數(shù)據(jù) { var template = Hogan.compile(htmlTemplate), result = template.render(data); return result; }, // 成功提示 successTips : function(msg) { alert(msg || "操作成功!"); }, // 錯(cuò)誤提示 errorTips : function(msg) { alert(msg || "哪里不對(duì)了~"); }, // 字段的驗(yàn)證,支持非空、手機(jī)、郵箱的判斷 validate : function(value, type) { var value = $.trim(value); // 非空驗(yàn)證,require表示必須有值 if("require" === type) { // 返回boolean值 return !!value; } // 手機(jī)號(hào)驗(yàn)證 if("phone" === type) { // 1開(kāi)頭的11位數(shù)字 return /^1d{10}$/.test(value); } // 郵箱格式驗(yàn)證 if("email" === type) { return /^(w)+(.w+)*@(w)+((.w{2,3}){1,3})$/.test(value); } }, // 統(tǒng)一登錄處理 doLogin : function() { window.location.href = "./user-login.html?redirect=" + encodeURIComponent(window.location.href); // 登錄完跳回當(dāng)前頁(yè)面 }, goHome : function() { window.location.href = "./index.html"; } }; // 輸出模塊化對(duì)象 module.exports = _mm;
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/84499.html
摘要:前言自總結(jié)完了上篇前端工程化的思想,并在全家桶的項(xiàng)目加以實(shí)踐,趁熱給大家總結(jié)一篇如何更有效率與質(zhì)量地開(kāi)發(fā)項(xiàng)目,以及其中踩過(guò)的一個(gè)個(gè)坑。。。 前言 自總結(jié)完了上篇前端工程化的思想,并在vue全家桶的項(xiàng)目加以實(shí)踐,趁熱給大家總結(jié)一篇如何更有效率與質(zhì)量地開(kāi)發(fā)vue項(xiàng)目,以及其中踩過(guò)的一個(gè)個(gè)坑。。。 基于vue-cli的自定義模板(Custom Templates) 小伙伴們的vue項(xiàng)目應(yīng)該都...
閱讀 593·2023-04-26 01:42
閱讀 3230·2021-11-22 11:56
閱讀 2407·2021-10-08 10:04
閱讀 855·2021-09-24 10:37
閱讀 3134·2019-08-30 15:52
閱讀 1755·2019-08-29 13:44
閱讀 478·2019-08-28 17:51
閱讀 2150·2019-08-26 18:26