二.tabBar&跳转&消息框&确认框&封装方法
1. 条件判断
wx:if wx:else 指令用于判断条件,满足条件显示上面的组件。
wx:if 是惰性的,如果在初始渲染条件为 false,框架什么也不做,在条件第一次变成真的时候才开始局部渲染。
相比之下,hidden 就简单的多,组件始终会被渲染,只是简单的控制显示与隐藏。
<view hidden="{{flag ? true : false}}"> Hidden </view>
一般来说,wx:if 有更高的切换消耗而 hidden 有更高的初始渲染消耗。因此,如果需要频繁切换的情景下,用 hidden 更好,如果在运行时条件不大可能改变则 wx:if 较好。
直接在组件上绑定表达式:
<view class="item {{i%2===0?'blue':''}}" style="color:{{i%2===0?'red':''}}">
2. tabBar
在app.json文件中添加tabBar节点。
color:tab上的文字默认颜色,仅支持十六进制颜色。
selectedColor:tab上的文字选中时的颜色,仅支持十六进制颜色。
backgroundColor:tab的背景色,仅支持十六进制颜色。
borderStyle:tabbar上边框的颜色, 仅支持 black / white。
position:tabBar的位置,仅支持 bottom / top。
custom:自定义tabBar。
list:tab的列表。
list 接受一个数组,只能配置最少 2 个、最多 5 个 tab。
pagePath:页面路径,必须在 pages 中先定义。
text:tab 上按钮文字。
iconPath:图片路径,icon 大小限制为 40kb,建议尺寸为 81px * 81px,不支持网络图片。
当 position 为 top 时,不显示 icon。
selectedIconPath:选中时的图片路径,icon 大小限制为 40kb,建议尺寸为 81px * 81px,不支持网络图片。
当 position 为 top 时,不显示 icon。
3. 跳转
navigator组件,用于页面链接,默认只能跳转普通页面。
如果要跳转tabBar页面,需要设置open-type="switchTab"。
代码跳转:
跳转到普通页面
跳转到tabBar页面
使用方法跳转页面的好处是:在跳转之前可能需要做其他事情,比如:验证权限等等。
4. 确认框和消息框
确认框:
wx.showModal({
title:”标题”,
success:res=>{}
})
消息框:
wx.showToast({
title:”标题”,
duration:1000
})
wx.showModal(
{title:'确定删除吗',
success:({confirm})=>{
if(confirm){
//获取组件传递的参数i(i是索引)
let i=e.currentTarget.dataset.i
//根据指定的索引,从数组中,删除对应的数据
this.data.goodsList.splice(i,1)
//数组中的数据删除后,还要触发页面更新
this.setData({
//将最新的数据,传递给页面显示
goodsList:this.data.goodsLis
t})
//消息框
wx.showToast({
title:'删除成功',
duration:1000}
)
}
}
})
5. 封装方法
确认框方法:
消息框方法:
获取事件参数的方法:
export 是ES6的导出语句。
import是ES6的导入语句。
将封装的方法放到utils\index.js文件中
将这些工具方法注册给wx对象
wx对象是微信小程序的全局对象,在任何地方都可以使用。
在app.js入口文件中导入