作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个组件,我想使用 panResponder 捕获手势事件,但是在尝试远程调试(在 chome 内)时,“this”上下文引用 DedicatedWorkerGlobalScope 的实例而不是类实例。
假设我有一个简单的组件
import React, { Component } from 'react';
import {
View,
Text
PanResponder
} from 'react-native';
class MyC extends Component
{
constructor(props)
{
super(props);
this.panResponder = PanResponder.create({
onStartShouldSetPanResponder : () => true,
onMoveShouldSetPanResponder : () => true,
onPanResponderGrant : this.panResponderGranted ,
})
}
panResponderGranted = (e, gestureState) => {
this.setState({offset : gestureState.dx}); //this.setState is undefined
}
render(){
return (<View />)
}
}
现在每当我单步执行 panResponderGranted 函数并查看第一级闭包时,我可以看到有一个名为 _this 的变量正确引用了类的实例。我调试错了吗?这是预期的行为还是错误?
最佳答案
您需要绑定(bind)panResponderGranted
,因为ES6 不会自动绑定(bind)函数。
即
onPanResponderGrant : this.panResponderGranted.bind(this),
关于react-native - React native 'this' 引用 dedicatedWorkerGlobalScope 而不是类实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39691837/
当我打印 这个在我得到的 onScroll 处理程序内部 DedicatedWorkerGlobalScope 而不是 build 者 . var Frame = React.createClass(
我有一个组件,我想使用 panResponder 捕获手势事件,但是在尝试远程调试(在 chome 内)时,“this”上下文引用 DedicatedWorkerGlobalScope 的实例而不是类
我收到以下错误 Uncaught TypeError: Failed to execute 'postMessage' on 'DedicatedWorkerGlobalScope': The pro
我是一名优秀的程序员,十分优秀!