Như ofObjectChanges được xây dựng trên Object.observe() đó là lỗi thời (https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/observe) Tôi đang tìm một sự thay thế cho xem những thay đổi sở hữu đối tượng. Có ai biết không?rxjs ofObjectChanges lỗi thời
5
A
Trả lời
2
Có lẽ sử dụng một Proxy là một lựa chọn, mặc dù nó cần thiết để thay thế các đối tượng gốc
const { Subject } = require('rxjs');
// Take an object, and return a proxy with an 'observation$' stream
const toObservableObject = targetObject => {
const observation$ = new Subject();
return new Proxy(targetObject, {
set: (target, name, value) => {
const oldValue = target[name];
const newValue = value;
target[name] = value;
observation$.next({ name, oldValue, newValue });
},
get: (target, name) => name == 'observation$' ? observation$ : target[name]
});
}
const observableObject = toObservableObject({ });
observableObject.observation$
.filter(modification => modification.name == 'something')
.subscribe(({ name, oldValue, newValue }) => console.log(`${name} changed from ${oldValue} to ${newValue}`));
observableObject.something = 1;
observableObject.something = 2;
Sản lượng
something changed from undefined to 1
something changed from 1 to 2
Hãy tìm Proxy trong bảng tính tương thích phiên bản nút hiện tại đã hỗ trợ đầy đủ) https://kangax.github.io/compat-table/es6/
Và tài liệu về Proxy tại https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Proxy
Các vấn đề liên quan
- 1. lỗi ném bên rxjs Quan sát
- 2. Tại sao Rxjs hủy đăng ký lỗi?
- 3. Sự khác nhau giữa Reactive-Extensions/RxJS và ReactiveX/rxjs
- 4. RxJS và WebWorkers
- 5. shareReplay trong RxJS 5
- 6. rxjs 5 publishReplay refCount
- 7. Nhập khẩu Góc và RxJS
- 8. lời hứa Chaining với RxJS
- 9. Rxjs quan sát các cập nhật và thay đổi đối tượng
- 10. Chaining quan sát trong RxJS
- 11. Sử dụng Rxjs bó UMD
- 12. angular2 rxjs forkjoin quan sát
- 13. RxJS distinctUntilChanged - đối tượng comparsion
- 14. SystemJS tải nhiều file cho rxjs
- 15. Lỗi bắt gặp trong đường ống kết hợp của các toán tử rxjs lờ mờ
- 16. RxJs Array of Observable to Array
- 17. Angular2 RxJS nhận được 'Observable_1.Observable.fromEvent không phải là một chức năng' lỗi
- 18. rxjs quan sát được không hoàn thành khi xảy ra lỗi
- 19. Tại sao tôi gặp lỗi khi tải các tiện ích mở rộng rxjs trong Angular 2?
- 20. Triển khai máy chủ HTTP RxJS + node.js?
- 21. Làm thế nào để lọc RXJS ArrayObservable
- 22. 'rxjs/Subject' là gì trong Angular2?
- 23. RxJS: Tách kết quả mảng từ Observable.fromPromise
- 24. Góc 2 rxjs lồng nhau Quan sát
- 25. Hành vi Promise.all với RxJS Observables?
- 26. AngularJs - RXJS Hủy đăng ký quan sát
- 27. Unmet Peer Dependency angular 2.3.0 rxjs zone.js
- 28. RxJS Promise Composition (truyền dữ liệu)
- 29. Rxjs 5 - Yêu cầu Ajax đơn giản
- 30. Chuỗi RxJS tương đương với lời hứa.then()?