双向绑定
小程序中普通的属性的绑定是单向的,要实现双向绑定的话就在对应属性前加入model:前缀
,与vue相比,暂不支持表达式形式,双向绑定同意可以使用在自定义组件上
父子传参
父传子
、
在自定义组件的js文件中通过properties属性来接收参数
,在父组件的子组件标签中双向绑定挂载自定义属性,然后在父组件中修改值同时子组件值也会修改。
子传父、
在子组件js文件中修改通过properties属性接收到的参数同时父组件中的值也会变化。
小程序组件封装
1.在根目录下创建一个components目录,用来存放所有组件
2.在components目录中以component方式创建文件,他就默认是组件级别的页面
3.在父组件的json文件中的usingComponents属性值来注册你的子组件。
4.在父组件的wxml文件中直接使用子组件标签就可以了。
小程序本地存储
wx.setStorageSync(); //存储值 wx.getStorageSync(); // 获取值
wx.removeStorageSync(); // 移除指定的值
wx.getStorageInfoSync(); // 获取当前 storage 中所有的 key
wx.clearStorageSync(); // 清除所有的key
小程序路由跳转方式
navigateTo
(有返回键,不可以跳转到tabBar页面)
switchTab
(没有返回键,只能跳转到tabBar页面,不可以携带参数)
reLaunch
(跳转任意页面,没有返回,有首页按钮)
redirectTo
( 只可以跳转任意页面, 没有返回,但有首页按钮)
navigateBack
(应用在目标页面, delta值为1 ,表示跳转上一页,2表示跳两级)
区别:
wx.navigator
是开启一个新页面,那个页面是隐藏了,原页面是onHide,所以是可以返回的,但是返回之后,跳转的页面就unload了
wx.redirecTo
是当前页面替换成新的页面,所以返回不去onunload(页面被卸载)
tabBar无论跳哪个页面都是onHide
路由传参
页面跳转传递数组的话必须先把他转为字符串形式然后传递过去,接收时在通过JSON.parse转化为数组
传递的参数内容过长时,要用encodeURIComponent进行编码在传递过去,然后在接收一方通过decodeURIComponent来解码,以此获得完整参数。