uni-app学习心得

本文介绍了uni-app的开发心得,包括应用和页面生命周期、全局网络请求的实现、iconfont字体图标使用方法以及缓存数据的应用场景和异步同步策略。通过学习,可以掌握uni-app的多平台发布及关键功能的实现。
摘要由CSDN通过智能技术生成

简介

uni-app 是一个使用 Vue.js (opens new window)开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。

开发工具

Hbuilder X 微信开发者工具 vscode

学习内容

  1. 项目结构

    • pages文件夹存放页面

    • static文件夹内文件不会进行编译,所以不要放js文件,可放到common中

    • unpackage文件夹存放打包的文件

    • components文件夹存放各种组件

    • App.vue代表应用,包括应用层的生命周期方法,全局样式等

    • pages.json整个应用的页面集合,第一项为启动页,可配置页面路由及样式和标题

    • manifest.json应用配置,包括图标配置、启动界面配置、权限配置及其他开发配置

    • main.js应用入口文件

一、应用生命周期

函数名说明
onLaunch当uni-app 初始化完成时触发(全局只触发一次)
onShow当 uni-app 启动,或从后台进入前台显示(多次触发)
onHide当 uni-app 从前台进入后台(多次触发)
onError当 uni-app 报错时触发
onUniNViewMessage对 nvue 页面发送的数据进行监听,可参考 nvue 向 vue 通讯
onUnhandledRejection对未处理的 Promise 拒绝事件监听函数(2.8.1+)
onPageNotFound页面不存在监听函数
onThemeChange监听系统主题变化

二、页面生命周期

函数名说明
onLoad监听页面加载,参数为上个页面传递的参数,参数类型为对象(触发一次)
onShow监听页面显示。页面每次出现在屏幕上都触发,包括从下级页面点返回露出当前页面(多次触发)
onReady监听页面初次渲染完成。注意如果渲染速度快,会在页面进入动画完成前触发
onHide监听页面隐藏(多次触发)
onUnload监听页面卸载
onPullDownRefresh监听用户下拉动作,一般用于下拉刷新
onReachBottom页面滚动到底部的事件(不是scroll-view滚到底),常用于下拉下一页数据

三、全局网络请求步骤:

1、建立一个request.js文件  
2、写出网络请求的方法  
3、开放导出  
4、在main.js引入  
5、在main.js中添加实例
6、用this使用方法
 

      四、iconfont字体图标使用:

优点:1、减小打包体积   2、缩放不失真、模糊   3、减少了网络请求次数

1、在iconfont官网中复制项目的css文件
2、新建目录common
3、新建文件iconfont.css
4、把复制的代码粘贴到iconfont.css中
5、补全https:协议
6、在App.vue中引入iconfont.css作为公共css
7、使用text元素的class属性添加iconfont和图标样式代码
8、对图标样式进行设置,与文字一致

五、使用缓存保存数据:

应用场景:
1、对时效要求不高的应用,初次加载页面,可使用缓存减少等待时间
2、无网络或服务器无法访问时,使用缓存提供本地数据查阅或离线阅读
3、相对固定不变的数据,无需每次从服务器获取

同步与异步
同步:指发送一个请求,需要等待返回,然后才能够发送下一个请求,有等待过程。
异步:指发送一个请求,不需要等待返回,随时可以再发发下一个请求。
最大的区别就是:同步需要等待,异步不需要等待。

使用步骤:
设置缓存值,获取缓存值,从服务器获取最新数据保存到本地

a.因缓存在本地,基本可不考虑耗时和失败的情况,所以使用同步异步均可(无所谓)
b.若需要即刻使缓存生效以进行下一步操作则必须使用同步方法(就是写上来)

缓存有效期:(看他问不问)
1、H5端有大小限制(5M),可能会被用户自行清理
2、app端无大小限制,属于持久化数据
3、微信小程序大小单条1M,最大10M,缓存与小程序生命周期一致
 

以上写的就是我学到的,希望对你有帮助。详细内容请参考uniapp官方文档

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值