 
                
                uniapp
全局
navigationBarBackgroundColor:‘’ // 导航条背景颜色
navigationBarTextStyle :”“ // 导航条字体颜色
navigationBarTitleText:“” // 导航条标题
enablePullDownRefresh:true || false // 是否允许下拉
backgroundColor:”“ // 下拉的背景颜色
backgroundTextStyle:”“ //下拉的loading图标的颜色 仅支持dark light
单独页面中设置样式
h5设置页面
| 1 | "h5":{ | 
tabBar
最少2个最多5个tab
| 1 | "tabBar":{ | 
text组件
属性:
selectable 可以选中
space ensp中文字符一半大小 emsp中文字符大小 nbsp空格解析为 一个字符空格
decode 布尔值 解码例如<解析为<
view组件
属性:
hover-class 鼠标按下时样式改变的class
hover-stop-propagation 阻止冒泡
hover-start-time 按下后?毫秒数后开始改变样式
hover-stay-time 按下结束后,保持多久毫秒
button组件
size 大小默认为default ,可选mini
type 按钮的样式类型 primary default 白色 warn 红色
plain 按钮是否镂空
disabled 按钮是否禁用
loading 是否带有加载图标 appnvue平台在ios为雪花,android为圆圈
image组件
image 默认宽高320*240
属性:
mode 设置图片
aspectFix按照长边保持纵横比缩放
aspectFill按照短边边保持纵横比缩放 会截图片
uniapp样式
- rpx即响应式px,一种根据屏幕px自适应的动态单位,以750宽的屏幕为基准,750rpx正好为屏幕宽度,屏幕变宽,rpx实际显示效果变大 
- 使用 - @import语句可以引入外联样式表,- @import后跟需要导入的外联样式表的相对路径,用- ;表示结束- @import url('a.css');
- 支持基本常用的选择器 class 、 id 、 element等 
- 在uniapp中不能使用 - *选择器
- page相当于- body节点
- 定义在App.vue中的样式为全局样式,作用于每一个页面,在pages目录下的vue文件中定义的样式为局部样式,之作用在对应的页面,并且会覆盖App.vue中的样式 
- uniapp支持使用字体图标,使用方式与普通 - web项目相同,需要注意以下几点- 字体文件小于 - 40kbuniapp会自动将其转换为base64格式
- 字体文件大于 - 40kb,需要开发者自己转换,否则使用将不生效
- 字体文件的引用路径推荐使用以~@开头的绝对路径 - 1 
 2
 3
 4- @font-face{ 
 font-family:test1-icon;
 src:url('~@/static/iconfont.ttf')
 }
 
uni的生命周期
应用的生命周期
onLaunch 当uniapp初始化完成时触发
onShow 当uniapp启动,或从后台进入前台显示
onHide 当uniapp从前台进入后台
onError 当uniapp报错时触发
页面的生命周期
onLoad 监听页面加载,其参数为上个页面传递的参数,参数类型为Object(用于页面传参)
onShow 监听页面显示,页面每次出现在屏幕上都触发,包括从下级页面点击返回露出当前页面
onReady 监听页面初次渲染完成
onHide 监听页面隐藏
onUnload 监听页面卸载
onPullDownrefrech 监听用户下拉刷新
下拉刷新
开启下拉刷新
在uniapp中有两种下拉刷新开启的方式
- 在pages.json里,找到当前页面的pages节,并且在style配置项中开启enablePullDownRefresh为true
- 通过调用uni.startPullDownRefresh()方法来下拉刷新
监听下拉刷线
通过onPullDownRefresh()生命周期监听
| 1 | export default { | 
关闭下拉刷新
uni.stopPullDownRefresh()关闭下拉刷新
| 1 | <template> | 
页面触底 上拉刷新
onReachBottom() 监听页面是否触底
onReachBottomDistance在pages.json中的pages配置项中,配置当前页面距离底部多少触发触底事件
网络请求
在uniapp中可以调用uni.request方法进行网络请求
需要注意的是:在小程序中网络相关的API在使用前需要配置域名白名单
发送get请求
| 1 | uni.request({ | 
数据缓存
uni.setStorage
uni.setStorageSync
| 1 | uni.SetStorage({ | 
uni.getStorage()
uni.getStorageSync()
| 1 | uni.getStorage({ | 
uni.removeStorage()
uni.removeStorageSync()
| 1 | uni.removeStorage({ | 
清除本地缓存数据
uni.clearStorage()
uni.clearStorageSync()
图片上传和预览
图片上传
uni.chooseImage()
| 1 | uni.chooseImage({ | 
图片预览
uni.previewImage()
| 1 | uni.previewImage({ | 
条件注释实现跨端兼容
条件编译是用特殊的注释作为标记,在编译时根据这些特殊的注释,将注释里面的代码编译到不同的平台
写法:以#ifdef 加平台标记开头,以#endif结尾
平台标记:
| 值 | 生效条件 | 
|---|---|
| VUE3 | HBuilderX 3.2.0+ 详情 (uni-app js引擎版) | 
| APP | App | 
| APP-PLUS | App(uni-app js引擎版) | 
| APP-PLUS-NVUE或APP-NVUE | App nvue 页面 | 
| APP-ANDROID | App Android 平台 仅限 uts文件 | 
| APP-IOS | App iOS 平台 仅限 uts文件 | 
| H5 | H5 | 
| MP-WEIXIN | 微信小程序 | 
| MP-ALIPAY | 支付宝小程序 | 
| MP-BAIDU | 百度小程序 | 
| MP-TOUTIAO | 抖音小程序 | 
| MP-LARK | 飞书小程序 | 
| MP-QQ | QQ小程序 | 
| MP-KUAISHOU | 快手小程序 | 
| MP-JD | 京东小程序 | 
| MP-360 | 360小程序 | 
| MP | 微信小程序/支付宝小程序/百度小程序/抖音小程序/飞书小程序/QQ小程序/360小程序 | 
| QUICKAPP-WEBVIEW | 快应用通用(包含联盟、华为) | 
| QUICKAPP-WEBVIEW-UNION | 快应用联盟 | 
| QUICKAPP-WEBVIEW-HUAWEI | 快应用华为 | 
演示:dom
| 1 | <!-- #ifdef H5 --> | 
演示:js
| 1 | onLoad() { | 
演示:style
| 1 | view{ | 
uni中的导航跳转
利用navigator进行跳转
跳转到普通页面
| 1 | <navigator url="/page/about/about"> | 
跳转到tabBar页面
| 1 | <navigator url="/page/message/message" open-type="switchTab"> | 
重定向跳转(无法返回)
| 1 | <navigator url="/page/about/about" open-type="redirect"> | 
利用编程式导航跳转
利用navigateTo进行导航跳转
保留当前页面,跳转到应用内的某个页面,使用uni.navigateBack()可以返回原界面
| 1 | <button @click="goAbout">跳转到关于页面</button> | 
通过navigateTo()跳转到普通页面
| 1 | getAbout(){ | 
通过switchTab()跳转到tabBar页面
| 1 | <button @click="goMessage">跳转到message页面</button> | 
| 1 | goMessage(){ | 
导航跳转传递参数
在导航跳转到下一个页面的同时,可以给下一个页面传递相应的参数,接收参数的页面可以通过onLoad生命周期进行接收(onLoad(options){})
传递参数的页面
| 1 | goAbout(){ | 
接收参数的页面
| 1 | <script> | 
uniapp中组件的创建
在uniapp中,可以通过创建一个后缀名为.vue的文件,即创建一个组件成功,其他组件可以将该组件import的方式导入,在通过componemts进行注册即可
-
- 标题: uniapp
- 作者: Voun
- 创建于 : 2023-08-19 11:30:00
- 更新于 : 2024-08-13 05:34:36
- 链接: http://www.voun.top/2023/08/19/13-uniapp/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。