【发布时间】:2018-07-15 06:38:47
【问题描述】:
我正在使用选择元素和 onChange 事件的一个代码处理 React js。
handleChange = (event) => {
this.setState({value: event.target.value});
}
render() {
return (
<div>
<label>
List
<select value={this.state.value} onChange={this.handleChange}>
<option value="one">One</option>
<option value="two">Two</option>
</select>
</label>
</div>
)
但我在 chrome 中一次又一次地收到此警告。 “[违规] 向阻止滚动的“鼠标滚轮”事件添加了非被动事件侦听器。考虑将事件处理程序标记为“被动”以使页面更具响应性。”。有没有解决办法。
【问题讨论】:
-
您确定是这个组件导致了问题吗?我很确定你有一个外部或外部脚本在监听鼠标滚轮事件(这个组件甚至不接触鼠标滚轮。)
-
是的,每当我点击选择时,我都会收到此警告
-
只渲染一个简单的
<select>没有处理程序。这必须是外部脚本。 -
删除了handleChange,还是一样的警告
-
开始检查页面上的其他脚本。您有一个正在监听鼠标滚轮的外部事件,它恰好在您选择下拉菜单时触发。
标签: javascript reactjs react-redux react-router passive-event-listeners