gpt4 book ai didi

javascript - 使用 React 和 Bacon 从节点获取 EventStream

转载 作者:行者123 更新时间:2023-11-29 18:04:33 32 4
gpt4 key购买 nike

这就是我如何使用 bacon.js 从常规 DOM 节点获取 EventStream:

var el = document.getElementById('input1');
var stream = Bacon.fromEvent(el, 'input')

当使用 React 时,DOM 节点可能会在一些 render() 迭代后重新创建,因此从真实的 DOM 节点(使用 React.findDOMNode)获取事件不是一种选择。目前我能想到的唯一选择是手动处理事件,然后将它们推送到总线:

var Component = React.createClass({
streams: {},
componentDidMount: function() {
this.streams.inputBus = new Bacon.Bus();
},
componentWillUnmount: function() {
this.streams.inputBus.end();
},
onInput: function(e) {
this.streams.inputBus.push(e);
},
render: function() {
return (
<input type="text" onInput={this.onInput} />
);
}
});

这个方法可以吗,或者有什么更好的方案吗?

最佳答案

我会说没关系。这两个示例中使用了类似的方法:

关于javascript - 使用 React 和 Bacon 从节点获取 EventStream,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32351947/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com