如何从ReactJS组件中删除“onClick”属性?
我刚开始使用ReactJS
和ReactJS
。 我不太清楚一些东西。
render( ) { return ( <div> <img src={this.props.pic} onclick={this.props.cb()} class="af1" /> </div> ); }
以上是我的App
组件的渲染方法。 我想在第一次点击图像后删除onClick
属性,并禁用图像( not able to click again
)10秒左右(请build议我是否有更好的方法来暂时禁用点击图像)。 这是一个很好的解决scheme吗?
为什么不能在Chrome的开发者控制台中看到onclick
attrib? 我真的开始喜欢学这个东西,我迷路了。
class App extend React.Component{ constructor(props){ super(props); this.onImageClick = this.onImageClick.bind(this); this.timeDelay= this.timeDelay.bind(this); } onImageClick(...args){ // do something } timeDelay(func, delay){ var isCalled = false; return (args)=>{ if (!isCalled){ isCalled = true; func(event); setTimeout(()=>{ isCalled = false; }, delay) } } } componentWillMount(){ this.onImageClickWithTimeDelay = this.timeDelay(this.onImageClick, 10000); } render(){ return <div> <img src={this.props.pic} onClick={ this.onImageClickWithTimeDelay }/> </div> } }
我希望这对你有用。