美文网首页
uni-app常用操作

uni-app常用操作

作者: SeekLife0 | 来源:发表于2024-06-13 16:30 被阅读0次

1、跳转页面。

uni.navigateTo({
    url: '/pages/login/index?navback=1'
});
//传递多个参数例子
uni.navigateTo({
        url: '/mall/shopcart/productDetail?id=' + id + '&merchantId=' + ids.merchantId +
        '&priceStr=' + priceStr + '&name=' + name + '&power=' + this.power +
        "&powerId=" +
        this.powerId + '&picUrl=' + picUrl + '&isMall=' + this.isMall
})

//回传
let pages = getCurrentPages()
let prevPage = pages[pages.length -2] 
prevPage.$vm.getSelectObjValue(this.ids) 
uni.navigateBack({delta:1})

//获取返回参数方法
getSelectObjValue(val) {
}

2、获取跳转参数

onLoad(options) {
   let id = options.id
}

3、页面声明周期

onLoad(){
}
onShow(){
}
onHide(){
}
onUnload(){
}

4、获取当前时间

this.startTime = Date.now();

5、本地数据的存储

//取出
uni.getStorageSync('userInfo');
//保存
uni.setStorageSync('userInfo', true);
//删除
uni.removeStorage('userInfo')
//异步获取结果
uni.getStorage({
    key: 'userMerchant',
    success: function(res) {
    }
})

6、安卓app权限操作
例如获取定位权限时,弹出请求权限弹框,被拒绝后弹出引导开启权限弹框。

//可到uni-app官方demo中拷贝该文件
// #ifdef APP-PLUS
import permision from "@/common/permission.js"
// #endif
                    let status = await this.checkPermission();
                    if (status !== 1) {
                        return;
                    }
                    uni.getLocation({
                        type: 'gcj02',
                        success: function(res) {
                            console.log(res.latitude);
                            this.lat = res.latitude
                            this.lng = res.longitude
                            uni.navigateTo({
                                url: '../store/choose-location?pagetype=index&lat=' + this.lat + '&lng=' +
                                    this.lng
                            })
                        }
                    });
            async checkPermission() {
                let status = permision.isIOS ? await permision.requestIOS('location') :
                    await permision.requestAndroid('android.permission.ACCESS_FINE_LOCATION');
            
                if (status === null || status === 1) {
                    status = 1;
                } else if (status === 2) {
                    uni.showModal({
                        content: "系统定位已关闭",
                        confirmText: "确定",
                        showCancel: false,
                        success: function(res) {
                        }
                    })
                } else if (status.code) {
                    uni.showModal({
                        content: status.message
                    })
                } else {
                    uni.showModal({
                        content: "需要定位权限",
                        confirmText: "设置",
                        success: function(res) {
                            if (res.confirm) {
                                permision.gotoAppSetting();
                            }
                        }
                    })
                }
                return status;
            }

7、vue动态样式

<view :class="status == 1?'top':'top1'" @click="show = true">

<style>
   .top{
      xxx
    }
   .top1{
     xxx
   }
</style>

8、uniapp中使用iconfont图标。
参考:【小程序开发】uniapp引入iconfont图标及使用方式_uniapp icon-CSDN博客
操作完后需要重启项目

相关文章

网友评论

      本文标题:uni-app常用操作

      本文链接:https://www.haomeiwen.com/subject/pgznqjtx.html