小程序刚出来的时候开发过一个,早已忘的一干二净。
一直用vue开发,再来开发小程序感觉诸多限制,满脸泪水。
有考虑用框架感觉没必要,虽说可以兼容多端,但是呵呵。。。还是看个人吧
wx:if 不要写成 v-if vx-if vx:if ,绑定数据要用{{}}括起来,和老版本的vue差不多
*尽量用微信提供的组件,不要用html标签,多些几个class就完事了,不然会撞鬼。
*小程序的目录结构可以自己额外添加,没有必要统一口径,怎么爽怎么来,可以添加但是不要删除这些固定搭配。
*图片等资源文件可以放在服务器里,然后直接访问路径,小程序是有大小限制的。
*访问data内的数据vue是this.test ,小程序this.data.test,设置数据是this.setData({test:‘呵呵‘})
*通过 const app = getApp();获取全局的应用实例
*app.js 里有 app .globalData 相当于设置全局变量的地方 在app.js 获取全局实例用this即可
wx.switchTab跳转,无法带参数,无法带参数,无法带参数,可以通过app .globalData或是本地存储解决,
onTabItemTap可以监听tabbar切换(页面调试)
通过渲染的列表点击进去很烦啊,不怕。
点击普通编辑的下拉框选择添加编译模式,弹窗内的提示很易懂,不做拓展。
setStorageSync
wx.setStorageSync (同步) 需要存储的内容。只支持原生类型、Date、及能够通过JSON.stringify
序列化的对象。
这个是和H5的localStorage类似的,但是传值不一样例如:wx.setStorageSync(‘area‘, JSON.stringify(area));。
wx.setStorage(异步)什么是异步不解释
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
picker
<picker mode="multiSelector" bindchange="bindMultiPickerChange" bindcolumnchange="bindMultiPickerColumnChange" value="{{multiIndex}}" range="{{multiArray}}"
range-key="name">
<view class="picker"> 当前选择:{{multiArray[0][multiIndex[0]]}},{{multiArray[1][multiIndex[1]]}},{{multiArray[2][multiIndex[2]]}} </view> </picker>
value="{{multiIndex}}"
multiIndex 是一个下标数组 我写的是省市的联动,只有二级
例:[0,1]
,如果三级,例:[0,0,0],如果是三级的省市区,微信提供了直接可用的mode类型(
mode = region)
range="{{multiArray}}"
multiArray 格式是这样的 let a = [{name:‘a‘},{name:‘b‘}]
let b =
[{name:‘c‘},{name:‘d‘}]
multiArray =[a,b]
range-key="name"
range 是一个 Object Array 时,通过 range-key 来指定 Object 中 key 的值作为选择器显示内容
~~~~~~~~~~~~~~~~~~~~~~~~~
唉~不想写了,看到这里你也知道我是一个有故事的人了