微信公开课
如何看待微信公开课小程序热门讨论「小程序RxWX使用教程」
摘要:小程序RxWX使用教程
展开:项目地址:https://github.com/yalishizhude/rxwxWriteless,domoreelegantly!封装了RxJS对象微信小程序API,让你写出更优雅更简介的代码。RxWX模块支持所有微信小程序中wx对象的属性和函数,例如getUserInfo等。RxWX模块的Rx属性为RxJS对象,支持RxJS对象所有属性,例如Observable等。安装下载使用githubgitclonehttps://github.com/yalishizhude/RxWX.git使用npmnpmirxjswx使用yarnyarnaddrxjswx拷贝根目录下的Rx.js和RxWX.js到项目目录引用文件importrxwxfromRxWX.js小程序中使用示例源码地址同步函数//原写法try{letresultwx.removeStorageSync(xx)console.log(result)}catch(e){console.error(小程序API发现错误)}//使用RxWX,rxwx对象具有wx对象的所有函数和属性,函数返回Observable对象importrxwxfrom../../utils/RxWX.jsrxwx.removeStorageSync(xx).catch((e)console.error(RxWX发现错误)).subscribe((resp)console.log(resp))异步函数//原写法wx.removeStorage({key:xx,success:function(res){console.log(res)},error:function(e){console.error(小程序API发现错误)}})//引用RxWX,rxwx对象函数参数与wx同名函数一致importrxwxfrom../../utils/RxWX.jsrxwx.removeStorage({key:xx}).catch((e)console.error(RxWX发现错误)).subscribe((resp)console.log(resp))异步嵌套//调用小程序原生APIwx.login({success(res){wx.getUserInfo({success(res){console.log(res.userInfo)},fail(e){console.error(e)}})},fail(e){console.error(e)}})//调用RxWXimportrxwxfrom../../utils/RxWX.jsrxwx.login().switchMap(()rxwx.getUserInfo()).catch(econsole.error(e)).subscribe(resconsole.log(res.userInfo))异步合并//调用小程序APIletgetUsernewPromise((success,fail){wx.getUserInfo({success,fail})})letgetSystemnewPromise((success,fail){wx.getSystemInfo({success,fail})})Promise.all([getUser,getSystem]).then((resp)console.log(resp),econsole.error(e))//调用RxWX中的Rx对象,包含RxJS所有操作符和函数importrxwx,{Rx}from../../utils/RxWX.js//使用zip操作符Rx.Observable.zip(rxwx.getUserInfo(),rxwx.getSystemInfo()).catch(econsole.error(e)).subscribe(respconsole.log(resp))wepy中使用示例源码地址安装RxWXnpmiSrxjswx当然我跟推荐你使用yarnyarnaddrxjswx引入模块importrxwxfromrxjswx使用rxwxsrc/app.wpysrc/pages/index.wpy更多RxJS微信小程序API更多内容请关注公众号“web学习社”。了解更多