文章目录:
一:uniapp介绍
二:环境搭建和技术
三:介绍项目目录和文件作用
四:参考文档和工具
五:注意的事情
六:各个功能
一:uniapp介绍
1.uni-app 是一个使用 Vue.js (opens new window)开发所有前端应用的框架,开发者编写一套代码,
可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、
快应用等多个平台。即使不跨端,uni -app同时也是更好的小程序开发框架。
2.相对开发者来说,减少了学习成本,因为只学会uni-app之后,即可开发出iOS、Android、 H5、
以及各种小程序的应用,不需要再去学习开发其他应用的框架,相对公司而言,也大大减少了开发成本。
二:环境搭建和技术
1.系统:windows10
2.工具:App开发版HbuilderX、微信开发者工具、phpstudy
3.框架:uniapp
4.技术:html5、css3、javascript、vue、es6、node.js
三:介绍项目目录和文件作用
1.pages.json文件用来对uni-app进行全局配置,决定页面文件的路径、窗口样式、原生的导航栏、底部的原生tabbar等
2.manifest. json文件是应用的配置文件,用于指定应用的名称、图标、权限等。
3.App.vue是我们的根组件,所有页面都是在App.vue下进行切换的,是页面入口文件,可以调用应用的生命周期函数。
4.main.js是我们的项目入口文件,主要作用是初始化vue实例并使用需要的插件。
5.uni.scss文件的用途是为了方便整体控制应用的风格。比如按钮颜色、边框风格,uni.scss 文件里预置了一批scss变量预置。
6.unpackage就是打包目录,在这里有各个平台的打包文件.
7.pages所有的页面存放目录
8.static静态资源目录,例如图片等
9.components 组件存放目录
四:参考文档和工具
uniapp手册:https://uniapp.dcloud.io/
RGB颜色查询对照表:http://destiny001.gitee.io/color/
colorui:http://hbzhenhua.com/#/
https://github.com/weilanwl/ColorUI
uview:https://www.uviewui.com/
五:注意的事情
1.生命周期
onLoad :监听页面加载,其参数为上个页面传递的数据,参数类型为Object (用于页面传参)
onShow:监听页面显示。页面每次出现在屏幕上都触发,包括从下级页面点返回露出当前页面
onReady:监听页面初次渲染完成。
onHide:监听页面隐藏
2.组件之间的通讯
父给子组件传值:属性绑定传递<test:msg= "msg"></test> 接收export default {props:[' msg']}
子给父组件传值:$emit触发事件进行传递参数this.$emit( ' myEven', this.num) ;在父组件定义@myEven="getNum"、定义getNum
兄弟组件传值:注册uni.$on 触发uni.$emit
3.在引入字体图标时候需要在图标前面加上~@+路径
4.对接口在工具中进行拼接地址
5.对request方法进行封装因为经常会进行调用
6.对相同的部分进行组件封装,自定义组件:建立组件、引入组件、注册组件、在页面直接使用组件、使用组件的生命周期函数
7.在列表刷新的时候记得使用数组拼接this. goods = [...this.goods,...res.data.message]
六:各个功能
底部tabbar
1.先创建几个页面
2.然后在同级下进行配置:默认和选中字体图标
轮播图
1.通过request请求接口返回数据,如果状态不为零代表请求成功就给数组赋值
2.swiper再将数据渲染到页面
下拉触底
1.通过onReachBottom
2.再对页面进行加获取第二页的数据,再对数据进行保留拼接数组
3.通过每一页数据的多少来判断是不是到底
下拉刷新
1.通过enablePullDownRefresh开启刷新
2.onPul1DownRefresh监听下拉刷新
3.把页面置为1,数组置空,设置不触底
4.设置延迟刷新,利用callback回调函数监听stopPullDownRefresh刷新完停止下拉刷新
拨打电话
1.通过点击事件进行绑定
2.在方法中用uni.makePhoneCall的phoneNumber属性指明电话号码
获取时间
const nDate = new Date(date)
const year = nDate . getFullYear( )
const month = nDate . getMonth( )toString( ).padStart(2,0)
const day = nDate . getDay( )toString( ).padStart(2,0)
return year+'-'+ month+'-'+day
搜索框
placeholder进行提示
v-model获取到输入框的值
评论
1.设置评论的输入框,点击评论弹出输入框,当输入框没有内容按钮灰色不可点击,
输入评论内容时按钮可以点击,点击发送将评论内容添加到点击评论的下面
2.先初始化:赋值一个当前评论的索引,是否显示评论的输入框,评论的内容
3.给输入框绑定事件,把值赋值给字符,获取输入的内容commentContent
4.当评论的内容大于时按钮才可以点击
5.点击评论的方法:获取当前索引currentCircleIndex: e.currentTarget. dataset. index ,
6.给评论按钮添加点击事件:获取当前页面内容,将评论加入当评论列表commentList.push(commentData)
7.渲染评论列表list: that.data.list,
收藏功能
给图片绑定一个点击时间,给图片设置号默认的状态,通过三元运算符来进行实现点赞和取消,
然后通过id将状态上传服务器进行异步更新