【React中阻止事件冒泡的问题详析】教程文章相关的互联网学习教程文章

javascript – reactjs事件监听器beforeunload已添加但未删除【代码】

我有一个反应组件,如:import React, { PropTypes, Component } from 'react'class MyComponent extends Component {componentDidMount() {window.addEventListener("beforeunload", function (event) {console.log("hellooww")event.returnValue = "Hellooww"})}componentWillUnmount() {window.removeEventListener("beforeunload", function (event) {console.log("hellooww")event.returnValue = "Hellooww"})}render() {retur...

javascript – React.js关于从组件中侦听窗口事件的最佳实践【代码】

我根据它们在视口中的位置设置了几个React.js组件的动画.如果组件位于视口中,则将不透明度设置为1,如果它不在视口中,则将其不透明度设置为0.我使用getBoundingClient()的top和bottom属性来确定组件是否在视口中. ComponentA显示了其他B,C和D组件所遵循的模式.他们每个人都在监听窗口滚动事件. 这是每个组件必须向窗口添加事件监听器的“React”方法吗?同一窗口上有多个滚动事件侦听器? 或者有一个更好的方法是在Home所有者组件中...

javascript – React.js Serverside渲染和事件处理程序【代码】

我正在学习使用react.js并有一些问题来使用事件处理程序.最后一个问题是:是否可以使用服务器端呈现并自动向客户端发送事件处理程序? 这是我的例子:我有一个index.jsx,我将其呈现给服务器端并发送给客户端var React = require("react"); var DefaultLayout = require("./layout/default");var LikeButton = React.createClass({getInitialState: function() {return {liked: false}; }, handleClick: function(event) {this.setS...

java – 使用Reactor选择与键匹配的事件【代码】

使用reactor(https://github.com/reactor/reactor)我通知一些事件,如commandReactor.notify("CREATE_CUSTOMER", Event.wrap(customer));commandReactor.notify("CREATE_ORDER", Event.wrap(order));如何实现选择以“CREATE”开头的所有事件的选择器?就像是@Selector(value = "CREATE*", reactor = "@commandReactor")提前致谢.解决方法:你可以使用RegexSelector [1]来做到这一点:commandReactor.notify("CREATE_(.+)", Event.wra...

javascript – React JS事件不会为最后渲染的元素触发【代码】

我创建了一个拖放界面,最终将其转换为表单生成器.我创建了一个表单生成器http://jsfiddle.net/szASZ/1/的小提琴.当你将其中一个顶部项目拖动到它下面的灰色拖放区域时,一切似乎都正常工作. 但是,我得到的问题是当你刷新页面/小提琴并尝试对放置区域内的项目进行排序时.如果您抓住第一个放置区域顶部的“无线电输入”并将其移动到该放置区域内部或外部,则一切正常. 现在,尝试在其放置区域中拖动最后一项“复选框输入”,所有内容也应...

javascript – 如何以编程方式从React Router 4.0中的事件处理程序导航到路由?【代码】

事件成功后我需要导航到路线.自从以前的版本以来,这似乎已经改变了以前我们会这样做:import { browserHistory } from 'react-router'; ... handleClick(){doSomething();browserHistory.push('/some/path'); }解决方法:此示例适用于react-router和react-router-dom v4.0.0. 我们有3个组成部分: > App.js – 包含组件1和组件2> Component1.js – 没有包裹在路线中并且将始终被渲染,但是这将没有“路径道具”的引用 – (历史,位置...

javascript – 如何从react.js元素中删除特定的事件侦听器【代码】

我正在使用这个简单的渲染函数和几个处理程序:render:function(){return (<div id="all-highlights" class="highlight-container" onm ouseDown={this.drag} onm ouseUp={this.dragEnd} onm ouseMove={this.moving}><div class="highlight"></div></div>);}在React.createClass函数中,使用类似:this.removeTheListener函数,我将如何删除特定的mouseMove函数?无论mouseMove函数的性能如何,我都知道它的资源很重,但我正在做的事情...

javascript – 什么是使用react-redux与基于事件的第三方库的最佳方法【代码】

将视图连接到不断调度事件的库的最佳方法是什么?我在redux实际示例中看到,最好使用mapDispatchToProps并注入加载操作.在我们的案例中,我们需要监听随时间推移的事件.我以为我们可以使用中间件来做到这一点,但我不是百分百肯定.还有其他选择是在动作创建者本身内进行聆听. 有任何想法吗? // app.jsx<div><MyCollection name="ONE" /><MyCollection name="TWO" /> </div>// my-collection.jsximport {load} from './actions';class...

javascript – 如何在React中触发本机事件?

我正在创建一个自定义输入标签PhoneInput.它里面有3个输入,所以我需要解析它们,然后重新连接到字符串.我想传入onChange回调SyntheticEvent,就像React一样.所以我需要创建隐藏的输入: < input onChange = {this.props.onChange} value = {this.state.value} /> 但是当我改变状态时,事件没有触发.怎么做对了?http://jsbin.com/bahuyuriqa/1 – 这是一个例子.解决方法:看来,更改事件只会从用户输入中触发.您是否需要在隐藏输入上使...

javascript – 使用React / React Router处理网站关闭/离开页面事件的惯用方法

我想在用户离开网站时向我的API服务器发送清理请求(实际上关闭选项卡/浏览器,而不仅仅是SPA中的更改页面).有没有一种惯用的方法在使用React和React Router的应用程序中执行此操作? componentWillUnmount会在页面上关闭吗?我假设没有.解决方法:React在这里没有做任何特别的事情.就这样做,你通常为此做.另外,请参阅a related question的答案 放置此订阅代码的最佳位置是componentDidMount生命周期方法.并且不要忘记在componentWill...

javascript – React委托正常事件处理程序到文档,绑定函数怎么样?【代码】

如您所知,React会自动将所有事件委托给文档,就像这里的大列表一样:handleTodo(){} render() { todos.map((todo)=><li onClick={this.handleTodo}>{todo.name}</li>)}将生成待办事项列表,但onClick事件将委托给文档,对吧? 但问题是关于绑定功能.handleTodo(todo){/**update todo */} render(){todos.map((todo)=><li onClick={this.handleTodo.bind(this,todo)}>{todo.name}</li>)}对于每个待办事项,由于参数不同,因此存在不同的绑...

javascript – React Flowtype Node.contains()事件目标【代码】

我在React中有这个事件监听器:document.removeEventListener("mouseup", this.handleDocumentClick);根据Flow’s source code,这是此方法的定义之一:removeEventListener(type: MouseEventTypes, listener: MouseEventListener, optionsOrUseCapture?: EventListenerOptionsOrUseCapture): void;看来监听器必须是MouseEventListener类型:type MouseEventHandler = (event: MouseEvent) => mixed type MouseEventListener = {han...

javascript – 删除React组件中onClick事件的特定表行【代码】

在删除记录之后,我是React的新手并且在如何操纵DOM方面苦苦挣扎.我有一些反应组件,但我关注的是删除我设置的rails api中的记录.我在Ajax onclick调用上删除了ok的记录,但是不知道使用React删除特定行的最佳方法. 表充满了数据var ContactAll = React.createClass({getInitialState: function() {return {contacts: [] }},componentDidMount: function() {$.ajax({dataType: "json",url: '/all-contacts',type: "GET",context: this...

javascript – 如何在React Native中收听触摸事件?【代码】

我需要监听React Native视图的触摸事件并在回调中执行一些操作.我无法以一种简单的方式做到这一点.我找到的唯一解决方法是使用Pan Responder并使用onResponderGrant回调.想知道是否有一种更简单的方式来听取触摸事件,类似于onPress.解决方法:您可以将TouchableOpacity用作提供可触摸反馈的视图.例如<TouchableOpacityonPress = {() => function()}onLongPress = {() => longerFunction()}style = {{these can be the same as a nor...

javascript – reactjs typescript事件这个未定义【代码】

我得到了下面用typescript编写的组件. (来自definitelytyped.org的类型定义).我将onWheel事件绑定到一个函数.但是当它被解雇时这是未定义的,那么我应该如何访问引用的元素this.div,如果我想/需要更改状态应该怎么做呢?import React = require('react');interface fooProps {src: string; }class foo extends React.Component<fooProps, {}> {private div: HTMLDivElement;public onWheel(e: React.WheelEvent): void {e.preventDe...