Skip to content

小程序开发总结 #103

Description

@originalix

很久很久很久没有更新了,最近几个月因为房子交房,生活上是一片忙碌,工作上的事其实还好,没有分去很多精力,主要是在生活上的事情牵扯了太多了精力,于是乎把每周一更博客的习惯都打断了,每周想起这件事情都觉得很愧疚,但是总是又抽不出时间来写,好像脑袋一片空白,不知道在要写什么。

现在房子开始正常装修了,想起来前段时间从前端到后端的独立完成了一个小程序的项目,想在恢复更新的时候,总结总结我在小程序的开发过程中碰到的问题或者是产生的感想。

这个项目是我第一个接触小程序的项目,所以一开始我抛掉了用一些热门框架的想法,就想从原生的小程序组织架构来感受小程序最初的设计。在完整的看完微信提供的小程序开发文档后,就开始着手尝试开发小程序了,因为是基于前端而构建的小程序,所以语言方面是没有什么障碍的,只是微信封装了一套自己的类似HTML标签,放在wxml这个格式的文件中,大家可以理解为html的后缀名,剩下的话wxss就与css基本一致了。而小程序与其他前端程序构建有区别的地方之一就是把配置文件放在了json格式的文件里,因为我有Native iOS的基础,所以我大概理解把一些Navigation与Tabbar UI组件相关的配置放在了json文件里,还有把React和Vue中引入组件相关的配置,放在json文件里。而全局有一个app.json的文件,路由配置也必须写在里面,写到这里就要开始吐槽微信小程序开发第一个让我体验不是很好的地方,就是你的每一个页面,是放在pages这个文件夹下面的,例如我们的主页index目录底下有这么几个文件index.wxmlindex.wxssindex.jsonindex.js。而这时你得在app.json中注册这个页面,比如填写/pages/index/index。就是这样的一个配置过程,每个页面下面有四个文件,每次还要去注册页面,只要一旦没注册,或者js里没有完成Page({})初始化对应的代码,那么整个小程序就会报错,运行不了,除非按照规范完成配置。如果小程序比较大,页面很多,那么这样配置我感觉还是挺累的。对于这个点我看到了微信官方发布的小程序框架wepy,在这个框架中是仿照Vue的组织架构,解决了上述的问题,所以接下来的小程序开发,我会尝试基于这个框架来开发,看看是否体验会变得更好。

第二点就是小程序的配置真的好严格哦,开发iOS或者安卓的时候,直接一台测试服务器就可以先把接口部署上,立马可以开发了,而小程序必须有已经完成备案的域名,并且基于https协议部署好,然后才可以在小程序的后台配置,上传文件域名,socket使用的域名,甚至webview的域名都要单独配置,累觉不爱。总是在需要完成某项功能的时候,才想起来还要配置,打开后台又是一番折腾。不过腾讯在这方面应该是基于安全考虑吧,毕竟是运行在微信的平台里的。

第三点就是小程序目前已经发展了快两年的时间了,感觉生态还不是很完善,比较完善的组件库也不是很多,我找到的大概除了微信官方的WeUI外,就是有赞的组件库和蘑菇街的组件库比较全了。所以如果想搞开源项目的同学,可以围绕小程序的生态动动脑筋,可能会孵化出不错的开源项目。

吐槽完小程序之后,再说说体验不错的地方,首先就是微信的JSAPI体验真的不错,受过iOS里各种API折磨的同学可能会有跟我一样的感觉,一些组件在JSAPI的设计里,调用只是这么简单的事情,并且微信的开发工具调试也是很不错的。只是真机测试的自由度还是有限,只能开发者本人测试。而小程序的设计也让下载app这样一个讨厌的事情被无形的解决了。当然了,代价就是你没有推送这种运营很关心的手段了,毕竟鱼和熊掌不可得兼。

我的第一个小程序的项目完成了,这只是开始的第一步,接下来也一定还会有更多的想法在微信小程序的平台上诞生的。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions