Javascript Don';我不明白onclick事件为什么不触发
我得到了一个有图片的画廊。在每幅图像上有3个图标,当你点击它们时,这些图标将执行操作。我试图激活图像图标上的onclick事件,但什么也没发生。图像图标是使用字体awsome在渲染功能中创建的。我是JavaScript新手 我一直试图在网站上搜索其他问题,但没有一个解决方案适合我 我要激活的功能:Javascript Don';我不明白onclick事件为什么不触发,javascript,reactjs,onclick,imageicon,Javascript,Reactjs,Onclick,Imageicon,我得到了一个有图片的画廊。在每幅图像上有3个图标,当你点击它们时,这些图标将执行操作。我试图激活图像图标上的onclick事件,但什么也没发生。图像图标是使用字体awsome在渲染功能中创建的。我是JavaScript新手 我一直试图在网站上搜索其他问题,但没有一个解决方案适合我 我要激活的功能: setNewSize() { const size = 500 this.setState({ size }); } 这里的问题是:
setNewSize() {
const size = 500
this.setState({
size
});
}
这里的问题是:
render() {
return (
<div
className="image-root"
style={{
backgroundImage: `url(${this.urlFromDto(this.props.dto)})`,
width: this.state.size + 'px',
height: this.state.size + 'px'
}}
>
<div>
<FontAwesome className="image-icon" name="clone" title="clone"/>
<FontAwesome className="image-icon" name="filter" title="filter" />
<FontAwesome className="image-icon" name="expand" title="expand" onclick={ this.setNewSize} />
</div>
</div>
);
}
}
render(){
返回(
);
}
}
React使用CamelCase约定,因此应该将onClick={this.setNewSize}
而不是onClick={this.setNewSize}
。这对您有用吗?React使用CamelCase约定,因此您应该将onClick={this.setNewSize}
而不是onClick={this.setNewSize}
。这对你有用吗?问题是onclick={this.setNewSize}
在react中,单击一次应为,如下更改
React中的事件处理与HTML中的事件处理类似,但有几个关键区别:
React事件使用camelCase命名,而HTML事件通常使用小写字母表示
在JSX中,传递函数作为事件处理程序,而不是函数名(字符串)
不能返回false以防止react中的默认行为。相反,您应该调用e.preventDefault()李>
希望有帮助,不要忘记绑定方法。问题是onclick={this.setNewSize}
在react中,单击一次应为,如下更改
React中的事件处理与HTML中的事件处理类似,但有几个关键区别:
React事件使用camelCase命名,而HTML事件通常使用小写字母表示
在JSX中,传递函数作为事件处理程序,而不是函数名(字符串)
不能返回false以防止react中的默认行为。相反,您应该调用e.preventDefault()李>
希望它有帮助,不要忘记绑定方法。您应该使用onClick,但也不要忘记绑定setNewSize。您可以通过三种方式完成此操作
1.onclick={this.setNewSize.bind(this)}
2.constructor(道具){
超级(道具);
this.setNewSize=this.setNewSize.bind(this);
}
3. const setNewSize=()=>{….}
您应该使用onClick,但也不要忘记绑定setNewSize。您可以通过三种方式完成此操作
1.onclick={this.setNewSize.bind(this)}
2.constructor(道具){
超级(道具);
this.setNewSize=this.setNewSize.bind(this);
}
3. const setNewSize=()=>{….}
您需要知道的事情很少
FontAwesome是由您编写或从库中使用的自定义react组件
传递给自定义react组件的属性作为道具传递给组件,除非在组件中使用并传递给DOM元素,否则它们不会产生任何效果。想知道更多关于这张支票的信息
3.必须在构造函数中绑定方法或使用箭头函数在其中正确使用this
要解决上述问题,如果从库中使用组件,则需要检查组件的文档,并查看处理onClick事件所需的道具。在驼峰情况下,很可能是onClick
如果您自己编写了组件,请确保按照链接文章中的说明解决问题,即将道具作为偶数传递给DOM元素。您需要知道的事情很少
FontAwesome是由您编写或从库中使用的自定义react组件
传递给自定义react组件的属性作为道具传递给组件,除非在组件中使用并传递给DOM元素,否则它们不会产生任何效果。想知道更多关于这张支票的信息
3.必须在构造函数中绑定方法或使用箭头函数在其中正确使用this
要解决上述问题,如果从库中使用组件,则需要检查组件的文档,并查看处理onClick事件所需的道具。在驼峰情况下,很可能是onClick
如果您自己编写了组件,确保按照链接帖子中的说明解决问题,即将道具作为偶数传递给DOM元素。这不是一个正确的答案,尽管它能解决问题。这不是一个正确的答案,尽管它能解决问题。这不是一个正确的答案,尽管它能解决问题。@ShubhamKhatri你能解释一下原因吗?这可能会有帮助。我添加了一个答案这不是一个正确的答案,尽管它可以解决问题。@ShubhamKhatri你能解释一下原因吗?也许会有帮助。我补充了一个答案