uniapp常用api整合
每次使用uniapp开发都有一些常用的api需要调用,直接写官方的api显的代码很杂乱,重复的太多,于是把这些常用的api整理起来,作为常用的工具挂载到vue对象上,这样在任何页面都可以用this获取使用,非常方便,非常实用的uniapp使用技巧,大家看到了也可以根据个人使用习惯进行增删,这样每次新开项目时,都可以直接复制过去使用,增加开发效率!
let global={ domain:"https://www.xxxx.com", post(url,data){ /* url接口,data为参数 */ var self=this; var requesturl=self.domain+url; let sysinfo=uni.getSystemInfoSync(); let appVersionCode=sysinfo.appVersionCode; return new Promise((response,reject)=>{ uni.request({ url: requesturl, method:'POST', header:{ 'content-type':'application/x-www-form-urlencoded', 'appVersionCode':appVersionCode, }, data:data, success: (res) => { response(res.data); }, fail: (res) => { reject(res); self.toast('网络错误!'); } }) }) }, toast(msg,time){ var time=time||2000; uni.showToast({ icon:'none', title: msg, duration: time }); }, go(url,flag){ if(flag==1){ uni.redirectTo({ url:url }) }else{ uni.navigateTo({ url:url }) } }, back(){ var page=getCurrentPages(); if(page.length==1){ uni.switchTab({ url:"/pages/index/index" }) }else{ uni.navigateBack({ delta:1 }) } }, selimg(){ var self=this; self.choose(1).then(res=>{ self.upload({ url: '/plugin.php?id=xiaoxiangce&type=6', file: res[0] }).then((res1) => { let filePath=res1.filePath; }); }).catch(err=>{ }) }, choose(num) { return new Promise((resolve, reject) => { uni.chooseImage({ count: num, success(res) { // console.log(res); // 缓存文件路径 resolve(res.tempFilePaths) }, fail(err) { console.log(err) reject(err) } }) }) }, upload(options){ var self=this; var requesturl=self.domain+options.url; return new Promise(function (resolve, reject) { uni.uploadFile({ url: requesturl, fileType: 'image', filePath: options.file, name:'file', formData:{}, success: function (response) { const res = JSON.parse(response.data); resolve(res); }, fail: function (err) { //util.message('网络错误', 'error'); reject(err); }, complete: function (res) { } }); }); }, parsetime(timestamp){//时间戳转日期格式 var timelength=timestamp.toString().length; function add0(m){return m<10?'0'+m:m }; var date=new Date(timestamp); if(timelength==10){ date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000 } var Y = date.getFullYear() + '-'; var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-'; var D = date.getDate() + ' '; var h = add0(date.getHours()) + ':'; var m = add0(date.getMinutes()) + ':'; var s = date.getSeconds(); return Y+add0(M)+add0(D); }, getitem(name){ return uni.getStorageSync(name); }, setitem(name,val){ uni.setStorageSync(name,val); }, removeitem(name){ uni.removeStorageSync(name); }, copy(str){ var self=this; uni.setClipboardData({ data: str+'', success: function () { self.toast("已复制") } }); }, validphone(phone){ var self=this; if(phone==""){ self.toast('请输入手机号码'); return false; } if(!(/^1[3456789]\d{9}$/.test(phone))){ self.toast('手机号码格式有误'); return false; }else{ return true; } }, } module.exports=global; //import global from './common/global.js';//引用 //Vue.prototype.$go = global
联系站长:
相关文章
vue history路由下,对ngnix服务配置修改防止出现404问题
打开配置文件: # 打开配置文件 vi /usr/local/nginx/conf/nginx.con 宝塔则点击域名在里面找到配置文件进去修改: 如果域名直接指向...
js把数字格式化为千分位兼容版,兼容小数(8,888.22)
js把任意数字格式化为千分位/** * 格式化为千分位 * @param num 当前值字符串 * @ret...
Animate.css使用方法,及源码下载,包含中文文档教程-css3动画演示合集,可用于uniapp
Animate.css是一个即用型跨浏览器动画库,可在您的 Web 项目中使用。非常适合强调、主页、滑块和注意力引导提示。注意:Animate.css可以在uniapp中使用,并且兼容多端,源码放页面...
uniapp富文本编辑器editor的使用,复制可用
关于uniapp富文本编辑器editor的使用,我会把HTML,css,js三部分代码都完整列出来,其实也是一个总结,因为官方教程有些不是很清楚,这里总结一下,方便大家使用:1、html部分:<...
jquery获取input选中值,jquery获取radio选中值,jquery获取select选中值,jquery获取checkbox选中值,jquery使用ajax异步提交表单数据
jquery获取input值://<input name="myinput"/> var inputValues = $(...
js获取m到n随机数,js获取随机整数,从0到10,从m到n任意数
˂a class="reference-link" name="js获取从m到n的随机数"˃js获取从m到n的随机数function getRandomNumber(min, ma...