小程序鸿毛框架(二)广播(通知)/路由/数据请求接口API

2019-03-15  本文已影响0人  敲疯

上一章说了小程序鸿毛框架的简介、持久化存储函数的封装、国际化的封装,这一章介绍一下另外三个:广播(通知)封装、路由管理、数据请求和接口的封装,还是看一下项目目录,我们封装的说有东西都在assets中,最好下载源码对照着看,因为有些截图可能不太清楚。

图1

.广播(通知)管理中心  assets/notification/notificationCenter.js

图解4 广播(通知)

    就这么多代码,是不是很简单?你也可以下载源码单独使用。Demo在PageA、pageB和baseClass.js中都有,看baseClass.js就好,使用简单高效。
    这里唯一要注意的就是广播名称:按照我的建议是你应该把广播名称写到这里面的NN中,我在后面把NN的内容都拷贝到NC中,你可以通过NC来调用写在NN的属性,这跟上一章介绍“持久化数据存储”封装是一样的考虑,关于频繁使用字符串切记不可“就地解决”。

.路由  assets/router/index.js

图解5 路由

    路由这个实际上算不上路由,因为只有路由的路由功能没有路由表。主要是简化了代码,使用起来更方便一些,当然也有一点点的考虑是怕微信小程序的wx.navigate函数会改变,如果这个函数名称或使用方法改变的话对于这么一个使用频率如此之高的函数那几乎是灾难性的。我唯一经历过一次就是swift2升级到2.5的时候(应该是,记不清了),有一两个使用频率非常高的函数的使用方式改变了,那build之后看到终端满是红标就像看到一个浑身是伤的动物一样,心想这下完蛋了,活不了了。当时swift很新,现在看到小程序也有点惶恐,不过实际上也不用太担心,毕竟封装优化js语言远不如苹果新建一个swift语言那么麻烦。

.API 接口文件 assets/service/api.js

图解6-1  路由

    接口文件就是要把所有的接口放到一个文件中,方便调用和更改,我相信这一点很多人都能够做到,但是我也见过“就地解决”的做法。使用方法在pageA中有示例。

.数据请求的封装  assets/service/server.js

图解6-2-1 数据请求 图解 6-2-2 数据请求 图解6-2-3 数据请求

    数据请求基于wx.request使用我们常用的promise进行封装。其中也封装了“请求自动显示加载动画”、网络异常报错功能。在图解6-2-1中,我们可以把post请求常用的参数放进去,比如token,避免以后使用post的请求再此传入token,节省代码量,提高工作效率。使用方法在pageA中有示例。

    到此这5个模块就简单的介绍完了,下一章会详细介绍它们的使用场景以及配合baseClass如何提高编程效率的。

git源码地址                  第一章             第三章

上一篇下一篇

猜你喜欢

热点阅读