Javascript RxDom:创建新id时不工作
我正在使用它来侦听来自DOM的事件。以下是我的示例代码:Javascript RxDom:创建新id时不工作,javascript,ajax,rxjs,rxjs-dom,Javascript,Ajax,Rxjs,Rxjs Dom,我正在使用它来侦听来自DOM的事件。以下是我的示例代码: var input = document.getElementById('test_id'); var source = Rx.DOM.change(input); var subscription = source.subscribe( function (x) { console.log(x); }, function (err) { consol
var input = document.getElementById('test_id');
var source = Rx.DOM.change(input);
var subscription = source.subscribe(
function (x) {
console.log(x);
},
function (err) {
console.log('Error: ' + err);
},
function () {
console.log('Completed');
});
当document.ready
finish页面上有test\u id
时,此代码起作用。但我使用的是AJAX请求,所以在客户端发送和接收AJAX请求时,test\u id
只会在一段时间后出现。我怎样才能让RxDom通知这个
谢谢。您需要再次创建可观察对象 调用
document.getElementById('test_id')代码>并且id为test\u id
的元素不存在,它返回null。因此,无法“刷新”源代码,因为它甚至不知道应该“刷新”哪个DOM元素
因此,唯一的方法是在从Ajax调用中附加HTML后创建可观察对象。wow。谢谢你让我知道这件事。另一个问题是:如何使其他元素订阅到此源。thanks@TrầnKimDự 它只是一个可观察的,你订阅它就像订阅任何其他可观察的。顺便问一下,你说的“元素订阅”是什么意思?DOM元素不能订阅任何内容。我有一个输入一个。当输入一个变更时,两个名为b和c的元素将知道并“做点什么”。正如上面的代码,我必须手动执行:当从a接收到更改信号时,我必须在同一个函数上运行do_something。我想反转动作,你现在做的方式完全一样。输入a
将在每次更改时更新b
和c
。输入的b
和c
无法自动更新,必须有人触发a
的更新。谢谢你让我知道。所以RxJS不支持递归观察器。它的意思是:如果a依赖于b。b取决于c。那么当改变a不改变c时?