Uni-App——API
简介
1. 交互反馈
uni.showToast(obj)
参数:
String title:提示的内容
String icon:图标
Number duration:持续时间
Function success:成功的回调函数
返回值:无
返回值意义:无
作用:显示消息提示框,给用户反馈。
uni.showToast({ icon:"loading", title:"加载中", duration:3000 })
uni.navigateTo(obj)
参数:
String url: 保留当前页面跳转页面,路径后可以带参数。以url形式附带
返回值:无
返回值意义:无
作用:跳转页面。
使用:
setTimeout(function(){ uni.navigateTo({ url:"../about2/about2?id=1&name=app" }) },2000) // 另一页面获取数据 onLoad(option) { this.id=option.id; this.name=option.name; }
uni.redirectTo(obj)
参数:
String url:跳转连接
返回值:无
返回值意义:无
作用:关闭原页面,跳转页面
使用:和uni.navigateTo(obj)只是会关闭原页面
2. getCurrentPage()
getCurrentPages()
函数用于获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面。
1. getCurrentPages()只会有缓存的页面,没有redirect后的页面。
2. 页面跳转应该在utils中统一缓存
3. uni.setStorageSync(String , value)
参数:
String:变量名
value:存储在本地的值
返回值:无
返回值意义:无
作用:在本地缓存中存储数据
4. uni.getStorageSync(String )
参数:
String:本地缓存的键
返回值:obj
返回值意义:获取本地缓存的数据
作用:获取本地缓存的数据
// 利用 getCurrentPages() 和 uni.getStorageSync(String ) 和 uni.setStorageSync(String , value)
作登录后页面的跳转
isLogin:() =>{ if( !vm.vuex_token ){ vm.$u.toast("请登录"); // 缓存要跳转的当前页。 跳转的地方获取到即可 console.log("current: "+getCurrentPages()); const backUrl = getCurrentPages()[getCurrentPages().length-1].route uni.setStorageSync("backUrl",backUrl) setTimeout(()=>{ uni.navigateTo({ url:"/pages/auth/login" }) },2000) return false; } return true; }
this.$u.toast("登录成功!") const backUrl = uni.getStorageSync("backUrl"); backUrl ? backUrl : "/pages/index/index" setTimeout(()=>{ uni.reLaunch({ url:"/"+backUrl }) },1500)