Вывод Object.observe и RxJS и Angular 2

Я немного смущен, потому что Obejct.observe, как говорят, снят с ES2016.

С другой стороны, были переговоры по Angular Connect, в которых упоминается, что они будут полагаться на него.

Итак, насколько я понимаю, Angular 2 не полагается непосредственно на Object.observe, а на RxJS, которые используют Object.observe

Не могли бы вы помочь мне понять последствия этого вывода? Я также смущен, как это повлияет на функциональную реактивную разработку javascript.

Извините, если это глупый вопрос, но все эти понятия для меня действительно новы.

Ответ 1

RxJS не полагается на Object.observe(и afaik не собирался делать этого в будущем), поскольку RxJS не имеет понятия наблюдаемых объектов сам по себе (вы могли бы создавать объекты с наблюдаемыми потоками как значения, хотя).

Для angular Object.observe был бы релевантным, но он не полагался на него, но я думаю (или, по крайней мере, не внешний хром).

В любом случае, если вам нужны наблюдаемые объекты, это все еще возможно, используя библиотеку Mobservable, как описано в этом blogpost.

Ответ 2

FYI.... v4.1.0 имеет определенную зависимость от Object.observe при использовании Rx.Observable.ofObjectChanges(obj)...

Протестируйте его самостоятельно в chrome, который теперь удалил поддержку OO, если вы используете этот метод для создания наблюдаемого, вы получите ошибку OO.

Итак, да, OO не имеет ничего общего с Observables в контексте RxJS, OO используется в 4.1.0, который является стабильным и все же должен быть реализован в 5.XX(что, я думаю, задержка вызвана переключатель в Proxy).

Итак, если вы хотите использовать потоки и шаблон Rx, тогда никаких проблем, если вы хотите использовать RxJS для наблюдения за объектом, извините, вы должны будете polyfill прокси и использовать это, поскольку из ObjectChanges разрывается банкомат для стабилизации хрома.