
第一种:常见的直接发起unirequest()请求
第二种:async修饰函数和await的使用,这个好像是es7的
第三种:es6异步promise封装这种发起请求接口,跟axios封装差不多
一个项目有N多个接口,但前面的一段url基本是一致不变的(专业点说也就是前面那一段是域名,域名是不变的+后面一段是变化的,是接口地址)。
这时候我们就可以抽离封装了api了。
在uni-app的mainjs中将apijs挂载到全局,让所有页面都能接收
页面调用(indexvue想使用):
效果:
Vue 项目往往需要使用 vue-router 插件,刚开始入门 Uni-app + Vue3 项目的同学,会不会想着路由使用 vue-router V4 版本不就可以了吗?
不怕大家笑话,我就是这样想的,毕竟我是第一次使用 Uni-app ,由于孕期记性贼差,所以我决定写成笔记,加深记忆。
uni-app 页面路由为框架统一管理的,我们需要在 pagejson 文件里配置每个页面路由以及页面样式,有些类似小程序中的 appjson 文件,所以 uni-app 的路由用法和写法与 vue-router 不同。
项目初始化完成,对应的 pagejson 文件为:
uni-app 通过 pages 节点配置应用都有哪些页面,接收一个数组,每个元素都是一个对象,属性有:
uni-app 页面路由跳转有两种方式:使用 navigator 组件跳转、调用API 跳转。
1、navigator组件跳转
类似于 a 标签,但是只能跳转到本地页面,目标页面必须在 pagejson 中注册。
navigator 属性有:
open-type 有效值
2、uni-app API 跳转
使用 API 页面跳转方式有:
框架以栈的形式管理当前所有页面, 当发生路由切换的时候,页面栈的表现如下:
方式1:onLoad 接收
方式2:setup语法糖接收
onLoad 函数是监听页面加载,接收的参数是页面传递的数据,是一个 object 类型。
看到这,相信很快就能上手 uni-app + vue3 项目路由喽,也可以参考官网教程:>
在uniapp中,可以通过unigetSystemInfoSync() 方法获取设备的屏幕像素密度(DPI)信息,具体步骤如下所示:
1调用unigetSystemInfoSync() 方法
在uniapp的页面中,调用unigetSystemInfoSync() 方法可以返回当前设备的系统信息,包括 *** 作系统版本、手机型号、屏幕分辨率、DPI等参数。
2解析返回结果并获取DPI值
通过getSystemInfoSync() 方法返回的结果为JSON对象,可以使用其中的“windowWidth”和“screenWidth”字段计算出DPI值。具体方法为:DPI = windowWidth / screenWidth 160,其中160是安卓平台的标准DPI值。
示例代码如下:
```
const systemInfo = unigetSystemInfoSync();
const screenWidth = systemInfoscreenWidth;
const windowWidth = systemInfowindowWidth;
const dpi = windowWidth / screenWidth 160;
consolelog('当前设备的DPI值为:' + dpi);
```
需要注意的是,getSystemInfoSync() 方法只能在小程序或H5平台上使用,在APP平台上需要使用其它的插件或API获取设备信息。另外,DPI值是一个相对值,不同设备的DPI可能会有所区别,因此在UI设计和布局时需要考虑多种分辨率和DPI情况,以保证应用的兼容性和视觉效果。
用到的api及相关插件:
unishare
*** 作系统粘贴板 插件
1,分享微信到朋友
2朋友通过分享看到的数据(因项目要求不高,现在只做了文字分享,用户通过复制链接进入app,通过获取复制板内容来判断)
以上就是关于uni-app的uni.request()请求封装全部的内容,包括:uni-app的uni.request()请求封装、三、Uni-app + vue3 页面如何跳转及传参、uniapp获取dpi等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)