收藏
回答

有没有像angular中的rxjs服务,可以完整页面件的通信?

小程序可以使用rxjs之类的服务吗?

回答关注问题邀请回答
收藏

1 个回答

  • CN-Tower
    CN-Tower
    03-31

    可以啊,用rxjs-mp: https://www.npmjs.com/package/rxjs-mp

    const Rx = require('rxjs-mp');
    
    /**
     * Request method
     * @param {string} url 
     * @param {any} data 
     * @param {'GET'|'POST'|'PUT'|'DELETE'} method
     * @param {{header?: object}} options 
     */
    function request(url, data = {}, method = "GET", { header }={}) {
      return new Rx.Observable(ob => {
        const requestTask = wx.request({
          url, data, method,
          header: {
            ...(header || {})
            'Token': wx.getStorageSync('token')
          },
          success: res => {
            if (res.statusCode == 200) {
              ob.next(res);
              ob.complete();
            } else {
              ob.error(res);
            }
          },
          fail: err => {
            console.error(err);
            ob.error(err);
          }
        });
        return () => requestTask.abort();
      });
    }
    


    03-31
    有用
    回复
登录 后发表内容