微信小程序之一些坑

最近开始上手微信小程序的开发,其中很多组件都被重新封装。在开发中,与我们之前直接写的JS还是有一些坑的。

  1. image 标签
    image标签会对图片有一个默认的宽和高设置,这会导致你在实际使用image图片时设置如 width=”100%” 等时会失效。虽然官方提供了图片的mode属性来处理图片,但是还是会改变图片原来的宽高比。所以,我的处理方法是,在app.wxss中清一下image默认的width和height。但同时也会导致的问题,之后所有使用的image都需要设置width和height。同时各种手机的兼容性问题,可以再iphone6模式下用rpx单位调整到合适,其他情况下会自动兼容适配。

  2. select组件
    暂时没找到下拉列表的组件,官方组件文档没有记录,还需继续研究。

  3. 微信小程序是单向绑定。而vue是双向(微信小程序没有提供v-model的等价指令,仅能通过事件对象读取用户输入)
    微信小程序数据绑定支持的表达式十分简单(即双大括号中的表达式),目前只支持这四种表达式:算数表达式、关系表达式、字符串连接表达式、三元表达式。vue则是全功能的JS表达式。体验上差别比较明显的在于是否支持函数/方法调用表达式

  4. 微信小程序在初始化之后,再对原来的数据对象进行任何更改,都始终不会生效!只能手动调用setData接口明确指明同步哪些键/值至视图层才会触发更新。而vue则是对数据对象进行了监听,只要有更改就可以并且会立即触发视图层的更新。

  5. 事件冒泡的阻止上,微信小程序只能通过bindtap/bindxxx与catchtap/catchxxx两种不同形式的事件绑定属性在监听时即决定是否阻止事件冒泡。而vue与传统web一样,可以在事件回调中运行时调用接口阻止继续冒泡

  6. 没有提供扫一扫功能API

  7. Input 密码框手机端不支持placeholder

你可能感兴趣的:(微信小程序)