2
"this"는 devtool 콘솔에서 정의되지 않았지만 분명히 정의되지 않았습니다. devtools의 버그 일 수 있습니까?이것은 정의되지 않은 경우에도 devtools에서 정의되지 않았습니다.
"this"는 devtool 콘솔에서 정의되지 않았지만 분명히 정의되지 않았습니다. devtools의 버그 일 수 있습니까?이것은 정의되지 않은 경우에도 devtools에서 정의되지 않았습니다.
당신은 ES6/ES2015 + 코드 (소스지도를 위해 감사) 그리고, this
속성이없는 원본에서 보는 것과 동일한 실제 코드 덜 읽을 수 ES5 - transpiled 코드에하지 검사되기 때문에 암호.
당신이 찾고있는 컨텍스트를 찾을 수있는 콘솔 등 _this
, _this1
, _this2
평가를 시도하고, this
에 액세스 할 수 있습니다.
const loaded =() => {
this.setState({ loading: false });
};
// will be compiled/transpiled to
var _this = this;
var loaded = function loaded() {
_this.setState({ loading: false });
};
참조 : https://www.sitepoint.com/bind-javascripts-this-keyword-react/
예, 더 OS 적은 ... 나는 정확히 설명하는 방법을 모르겠어요 ... 문제는 당신이 "검사"하는 코드가 실제로 ECMAScript를 5 만이다 인 "보고있는"코드는 ES6입니다. 콘솔에'this'를 입력하면 브라우저는'this' 변수를 보여 주려고하지만 souce-code에는'this' 변수가 없습니다. 보통 transpiler는'_this'를 사용합니다 ...'this '시도'_this' 그리고 올바른 값을 볼 것입니다 –
고마워, 네 말이 맞아. 유일한 차이점은 제 경우에는 그것이 마치 보이는 것입니다. – Sathees
네, 여러 가지에 달려 있습니다 ... 번역 된 코드 (ES5)를보고 변수의 실제 이름을 확인하십시오 –