【发布时间】:2015-11-29 14:42:13
【问题描述】:
我正在尝试通过制作带有可折叠项目的菜单来学习一些 React。我将 jQuery 用于它的 slideToggle 功能,但我无法让它正常工作。
react 代码的相关部分是这样的:
var CollapsableMenuItem = React.createClass({
toggleDescription: function(el) {
$(el).slideToggle();
},
render: function() {
return (
<li>
<label className='title'
onClick={this.toggleDescription.bind(this)}>
{this.props.item.title}
</label>
<div className='description'>
<label>
{this.props.item.body}
</label>
</div>
</li>
);
}
});
虽然我目前正在尝试滑动切换“this”,但将来需要更改为
$(el).parent().find('.description').slideToggle();
因为这是需要滑动切换的实际元素
绑定“this [element]”的正确方法是什么,以便 jQuery 可以对其进行 slideToggling?
我目前正在使用this fiddle,其中还有一些其他内容您可以忽略。相关代码在javascript部分的底部
想到的第二个问题:使用 jQuery.ready 函数将点击事件等绑定到 react 是不好的做法吗?
理论上,我可以将一个 jquery 文件与每个组件文件及其事件处理程序捆绑在一起。
【问题讨论】:
标签: javascript jquery reactjs