博客列表 >小程序api(生命周期函数基础 api的交互 api路由 数据的修改与渲染 )3月27日

小程序api(生命周期函数基础 api的交互 api路由 数据的修改与渲染 )3月27日

小明的博客
小明的博客原创
2019年12月01日 08:16:42817浏览

今天学习了小程序的api基础,具体就是小程序的声明周期函数,api交互(消息框,对话框),api的路由,还有基础数据的渲染,修改。

周期函数

. onLoad 每次加载页面都会调用
. onReady 初次渲染的时候调用 之后再加载时就不会调用
. onHide 页面转入后台时调用
. onUnload 页面卸载时调用 意思就是长时间再后台进程杀死后

  • 这里讲一下前后台 区别于通常程序员分类的前后天,小程序这里的前台就是展示的页面,后台就是关闭后保留在后台进程中

API交互

. wx.showToast 显示消息提示框

  1. wx.showToast({
  2. //提示的内容
  3. title: '今天一天好心情!!',
  4. //提示框显示的图标 默认success 有loading none
  5. icon: 'loading',
  6. //自定义图标的本地路径,优先级高于title
  7. image: 'cry.png',
  8. duration: 6000,
  9. success() {
  10. setTimeout(function () {
  11. wx.hideToast()
  12. }, 1000)
  13. }
  14. })

. wx.showModal 显示模态对话框

  1. wx.showModal({
  2. title: '提示',
  3. content: '这是一个模态弹窗',
  4. // 是否显示取消按钮 默认显示 false的话就是一个确认按钮
  5. showCancel: true,
  6. cancelText: '去掉',
  7. cancelColor: '#33ddff',
  8. confirmText: 'sure',
  9. confirmColor: '#000000',
  10. success(res) {
  11. if (res.confirm) {
  12. console.log('用户点击确定')
  13. } else if (res.cancel) {
  14. console.log('用户点击取消')
  15. }
  16. }
  17. })

. wx.showLoading 显示加载框 必须与hideLoading同时使用

  1. wx.showLoading({
  2. title: '加载中',
  3. success() {
  4. setTimeout(function () {
  5. wx.hideLoading()
  6. }, 1000)
  7. },
  8. })

. wx.showActionSheet 显示操作栏

  1. wx.showActionSheet({
  2. itemList: ['A', 'B', 'C'],
  3. success(res) {
  4. console.log(res.tapIndex)
  5. },
  6. fail(res) {
  7. console.log(res.errMsg)
  8. }
  9. })

路由

. wx.switchTab 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面

  1. wx.switchTab({
  2. url: '../index/index'
  3. })
  4. //需要在全局app.josn中新建tabbar
  5. "tabBar": {
  6. "list": [
  7. {
  8. "pagePath": "pages/1/1",
  9. "text": "首页"
  10. },
  11. {
  12. "pagePath": "pages/index/index",
  13. "text": "其他"
  14. }
  15. ]
  16. }

. wx.reLaunch 关闭所有页面返回到应用的某个页面

  1. wx.reLaunch({
  2. url: '4'
  3. })

. wx.redirectTo 关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面。

  1. wx.redirectTo({
  2. url: '4'
  3. })

. wx.navigateTo 保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面。使用wx.navigateBack可以返回到原页面。小程序中页面栈最多十层。

  1. wx.navigateTo({
  2. url: '2',
  3. })
  4. //在应用内在新建3个页面分别为2 3 4 然后在每个页面设置忘下一个页面跳转 在最后一页跳转到前3层 也就是第一层
  5. setTimeout(function () {
  6. wx.navigateBack({
  7. delta: 3
  8. })
  9. }, 2000)

数据修改与渲染

. this.setData 小程序中的数据是单向绑定的,意思就是this.data只能读取,this.setData才能修改

  1. this.setData({
  2. name: 'jiji'
  3. })

. wx:if 标签内的判断
. wx:for 循环

  1. <view wx:if="{{ title }}">{{ title }} 有{{ number }}讲师</view>
  2. <!-- wx:for是循环 -->
  3. <!-- <view wx:for="{{ teacher }}" wx:key="">
  4. <view>-----------------------</view>
  5. <view>编号:{{ item.id }}</view>
  6. <view>姓名:{{ item.name }}</view>
  7. <view>年龄:{{ item.age }}</view>
  8. </view> -->
  9. <!-- 循环出来的元素item可以用wx:for-item改名字 index下标的名字也可以该 改他们的意义在于为了和下面的循环不重名 解决变量污染的问题 -->
  10. <view wx:for="{{ teacher }}" wx:key="" wx:for-item="jj" wx:for-index="kk">
  11. <view>-----------------------</view>
  12. <view>编号:{{ jj.id }} 下标:{{ kk }}</view>
  13. <view>姓名:{{ jj.name }}</view>
  14. <view>年龄:{{ jj.age }}</view>
  15. </view>
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议