rxjs-addons

Rx add-ons

Rx add-ons

Installation

$ npm i rxjs-addons -S

Example usage

AttributesProxySubject

import { AttributesProxySubject } from "rxjs-addons";
const subject = new AttributesProxySubject({
  a: 1,
  b: 2,
}, {
  schema: {
    a: {
      getter: true,
      setter: true
    },
    b: {
      subject,
    },
  },
});

console.log(subject.a) // 1
console.log(subject.b) // undefined

subject.b$.subscribe((value) => console.log("b:", value));

/*
  b: 2
 */

ErrorSubject

import { ErrorSubject } from "rxjs-addons";
const subject = new ErrorSubject();

subject.subscribe((err) => console.error(err));

// regular catch
try {
  throw new Error("Error");
} catch (err) {
  subject.error(err); // or errorSubject.next(err); 
}

// wrapping promise or async function 
subject.wrapAsync(async () => {
  throw new Error("Error");
});
subject.wrapAsync(Promise.reject(new Error("Error")));

// wrapping promise or async function and return promise
subject
  .wrapTAsync<string>(async () => {
    ... // 
    return "value";
  })
  .then((value) => console.log(value));

UniqueBehaviorSubject

import { UniqueBehaviorSubject } from "rxjs-addons";
const subject = new UniqueBehaviorSubject(1); // with default value

console.log(subject.value); // 1

subject.next(2);
subject.next(2);
subject.next(2);
subject.next(3);
subject.next(3);

subject.subscribe((value) => console.log("value:", value));

/*
  value: 1
  value: 2
  value: 3
 */

Testing

$ npm test

License

The MIT License

Repository

https+https://github.com/stanislaw-glogowski/rxjs-addons


上一篇:elementUI中table动态列以及动态列排序
下一篇:ink-text-input

相关推荐

  • 面试题 LazyMan 的Rxjs实现方式

    前言 笔者昨天在做某公司的线上笔试题的时候遇到了最后一道关于如何实现LazyMan的试题,题目如下 实现一个LazyMan,可以按照以下方式调用: LazyMan(“Hank”)输出: H...

    1 年前
  • 简单的html5与Rxjs实现table同时固定列和表头(for angular)

    凡是参与大型项目开发,或者是企业级的系统,经常会遇到数据复杂,数据量大的问题。通常需要前端呈现大量的数据,而我们通常都会使用table去呈现。一目了然。可能很多人会问,现在的组件库不是很成熟了吗,各种...

    3 天前
  • 用rxjs实现小程序状态管理

    前言 用vue和react做开发,我们经常选择vuex,redux一类的状态管理工具来辅助管理状态,状态逻辑复杂的微信小程序,如果有状态管理工具的话,可以极大地提高开发效率和可维护性。

    6 个月前
  • 彻底理解RxJS里面的Observable 、Observer 、Subject

    最近闲来无事,常常重读Angular官方文档,颇能发现些有趣的地方。让我想起海澜之家的广告词:每次都有新体验。 Observable和Observer 关于RXJS的基础概念,observable和o...

    3 个月前
  • 将RxJS融入React项目

    前言 最近准备毕设,技术选型的时候因为功能的一些需求准备将RxJs融入到项目中,考虑RxJs的时候因为之前的技术栈还犹豫了一下,查了一些资料以及粗略浏览了一些文档。

    2 年前
  • 如何让主题或观察rxjs电流值?

    Baconbeastnz(https://stackoverflow.com/users/314963/baconbeastnz)提出了一个问题:How to get current value of...

    2 年前
  • 如何优雅地结合Rxjs和WebWorker

    在项目中同时使用rxjs和webworker的场景并不多,所以相关的资料也较少,恰巧我在开发项目时遇到了很适合使用这两项技术的场景,所以尝试着将其结合起来使用,也收到了很不错的效果,所以分享一下自己的...

    2 年前
  • 函数式编程 | 打造自定义的RxJs操作符

    mapoperator.jpeg(/public/upload/6d5ccb2b0b41692ac1b65f007675e9d5) 最近在学习函数式编程相关的知识,这篇文章源于学习自定义RxJ...

    1 个月前
  • 像呼吸一样自然:React hooks + RxJS

    上个月的 React Conf 上,React 核心团队首次将 hooks 带到的公众们的眼前。起初我看到这样奇怪的东西,对它是很抗拒的。Dan 说 JavaScript 里的 this 太黑了,从其...

    1 年前
  • 使用 react 和 rxjs 打造的虚拟列表组件

    Virtuallist component build with react and rxjs NPM(https://img.javascriptcn.com/1fd0aff36da02479b...

    1 年前

官方社区

扫码加入 JavaScript 社区