【发布时间】:2018-07-10 22:39:49
【问题描述】:
我正在尝试调试create-react-app,当我在箭头函数上设置断点时,this 关键字内部的值无效,并且停止断点的行为完全奇怪(开发工具不允许在一个有效的 js 表达式,它看起来像禁用断点。我检查了 FF 和 Chrome 浏览器。但是,当我将箭头函数 (()=>{}) 更改为 function(){} 声明时,调试行为是正确的。有谁知道问题是什么,你会推荐什么反应启动项目正确调试箭头函数?
我在 App.js 中的代码看起来像 here。尝试在该行内放置一个断点:
this.setState({value: this.state.value + 1})
this 应该是 App 但事实并非如此。尽管应用程序的行为是正确的,但在此特定断点处是 undefined。我怀疑 sourcemaps 出了点问题……有哪些 react 项目可以通过 webpack 正确处理 sourcemaps?
【问题讨论】:
-
您观察到的这种“奇怪行为”是什么?
-
您能否在问题中包含您注意到这种奇怪行为的代码?
-
我在 App.js 中的代码看起来像这里 - jsbin.com/zotugemeca/1/edit?js
-
箭头函数行为异常是什么意思?箭头函数没有自己的
this,但它们有封闭词法范围的this。 -
this应该是App但事实并非如此。尽管应用程序的行为是正确的,但在此特定断点处是undefined。我怀疑源地图有问题。
标签: reactjs ecmascript-6 create-react-app