今天,我们来总结下我们平常使用的工具函数,希望对大家有用。 源码: 使用: 源码: 使用: 源码: 使用: 源码: 使用: 源码: 使用: 源码: 使用: 不断更新… 谢谢关注 作者:Vam的金豆之路 主要领域:前端开发 我的微信:maomin9761 微信公众号:前端历劫之路 1、封装fetch
/** * 封装fetch函数,用Promise做回调 * @type {{get: (function(*=)), post: (function(*=, *=))}} */ const fetchUtil = { get: (url) => { return new Promise((resolve, reject) => { fetch(url, { method: 'GET', headers: { 'Content-Type': 'application/x-www-form-urlencoded', } }).then((response) => response.json()).then(response => { resolve(response); }).catch(err => { reject(new Error(err)); }); }); }, post: (url, params) => { return new Promise((resolve, reject) => { fetch(url, { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded', }, body: params }).then((response) => response.json()).then(response => { resolve(response); }).catch(err => { reject(new Error(err)); }); }); } }; export default fetchUtil;
import Fetch from "../util/FetchUtil.js"; // post请求 post(){ let params = ""; params += "phone=" + "xxxxxx" + "&password="+"123456"; Fetch.post("https://carvedu.com/api/user/sms", this.params) .then(res => { console.log(res); }) .catch(err => { console.log(err); }); } // get请求 get() { Fetch.get("https://carvedu.com/api/courses") .then(res => { console.log(res); }) .catch(err => { console.log(err); }); }
2、判断浏览器环境
function getSystem(){ const mac = /mac/i, linux = /linux/i, win = /win/i; const platform = navigator.platform.toLowerCase(); if(mac.test(platform)){ return 'MAC'; } else if(win.test(platform)){ return 'WIN'; } else if(linux.test(platform)){ return 'Linux'; } return undefined; } const browser = { versions:function(){ let ret = 'xxSys'; const u = navigator.userAgent; const isMobile = !!u.match(/AppleWebKit.*Mobile.*/), ios = !!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X/), android = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; if(isMobile){ if(ios) return 'IOS'; if(android) return 'Android'; } else { ret = getSystem() || ret; } return ret; }(), }; export default browser;
import browser from "../util/browers.js" console.log(browser.versions);
3、计算时间差
let startTime = new Date().getTime(); export const start = (v) =>{ if(v==='reset'){ return startTime = new Date().getTime(); } else{ return startTime; } }
import {start} from "../util/Time.js" click(){ let userTime = new Date().getTime()-start(); start('reset'); }
4、封装正则库
export default { // 正则 regExp:()=>{ return { mPattern :/^1[345789]d{9}$/, //手机号验证规则 cP : /^[1-9]d{5}(18|19|([23]d))d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)d{3}[0-9Xx]$/, // 身份证验证规则 regCode : /^d{4}$/ //验证码规则 /*......*/ } } }
import regExp from '../util/regExp.js' reg(){ var value ="" // 手机号码举例 console.log(regExp.regExp().mPattern.test(value)); },
5、判断浏览器是否支持摄像头
export default { // 判断有无摄像头 videoCheck:()=>{ var deviceList = []; navigator.mediaDevices .enumerateDevices() .then(devices => { devices.forEach(device => { deviceList.push(device.kind); }); if (deviceList.indexOf("videoinput") == "-1") { console.info("没有摄像头"); return false; } else { console.info("有摄像头"); } }) .catch(function(err) { alert(err.name + ": " + err.message); }); }, }
import videoCheck from '../util/videoCheck.js' videoCheck.videoCheck();
6、图片是否加载完成
export default { // 图片加载 imgLoad:(src)=>{ let bgImg = new Image(); bgImg.src = src; // 获取背景图片的url bgImg.onerror = () => { console.log("img onerror"); }; bgImg.onload = () => { console.log("加载完成"); return false }; } }
import imgLoad from '../util/imgLoad' imgLoad.imgLoad('这里写图片的地址');
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算