微信小程序的一些不够美的地方

前段时间(2016年9月22日),腾讯释出了微信小程序的测试版,各路开发者纷纷出台攻略,一举攻占这块高地

随着各路牛人,纷至沓来的对微信小程序进行各种各样的测试与编制,如今这一块已经没有什么很高深的技术难度了。想要学习微信小程序的,读懂官方释出的开发文档,基本就能应对大部分的开发需求了。

当然,由于目前微信小程序还处于内侧阶段,并不是所有开发者都有自由创建微信小程序的权限。但是这并不能难倒无所不能的开发群众,一个IDE破解版应运而生。

本篇文章的重点并不是要介绍微信小程序是如何开发与运作的,下面将给出本人在攻略微信小程序的过程中遇到的一些问题,同时结合目前网上出现的一些其他疑难杂症,做一个简单的阐述。

首先,微信小程序的项目文件看起来是前端文件,但实际上并不完全是。其页面文件格式为wxml,样式文件为wxss。或许是仿照react nativeJSX,也或许是参考了vue.js的模板格式,微信小程序现在是不支持HTML的。这意味着如果要实现微信小程序的页面,需要对HTML/CSS/JS进行重写。没有DOM,这也稍稍提升了一些难度,然而这并不是什么太大的问题,参照官方给出的手册,一个个照着修改就行了。

不支持a标签的链接跳转。即使是相对链接,也无法进行跳转。a标签是HTML标准标签

WXML和HTML的语法相差还是蛮大的,一股浓浓的自定义标签的风格跃然纸上,令人瞠目结舌。

样式控制文件为wxss,跟常规的css有些类似,但却不是一回事。WXSS或许是参考了sass/less/stylus,页面实际渲染的时候这个文件不会直接读取,而是会编译之后再进行样式的呈现。粗看了一下,发现里面有个度量单位是rpx,看起来还是很有意思的。几经测试,发现这个就是一个黑科技,变相的封装了一个rem风格的单位而已。另外,WXSS的选择器不能级联。于是,这就解释了为什么我们看到的WXSS文件里面都是单个选择器。

微信小程序的源码大小有一定的限制,限制为1M,超过了传不上去。通过wx.request接口获取到的数据大小也不会超过1M。

图文混排有很严重的短板。究其原因,是因为微信小程序不支持WebView,其自带的view和text不能做图文混排,所以想要图文混排效果,就要通过其他方式来实现了(比如绝对定位)。

大千世界,芸芸众生,微信小程序一经推出,牵动了大量开发人员的神经。但是归根结底,并不会对目前的市场造成太大的影响,大家该干嘛还是干嘛,戒骄戒躁。


微信小程序部分参考资料:


更正:微信WXSS语法支持级联CSS。 2016.10.9