예제가 내 질문을 잘 설명해줍니다.굵은 화살표로 된이 문맥
let obj = {
columns: [
{ column: name },
{ column: name },
{ column: name },
{ column: name },
{ column: name }
],
someFunc:() => {
this.somePublicFunc(this.columns[0])
}
}
regular function()을 사용하면 this.columns가 obj.columns를 가리 킵니다. 거기에 뚱뚱한 화살표 함수 내 에서이 범위에 액세스하는 방법이 있나요?
다른 방법으로 비 - 축 화살표 함수에서 공용 함수를 호출 할 수 있습니까?
someFunc: function() {
this.somePublicFunc(this.columns[0])
}
편집 :이 실제 코드에 대한 가장 우아한 옵션 아니므로 내가 obj.columns에 액세스 할 수 있습니다 알고 있지만, 다른 옵션을 찾고 있었다.
편집 : 이것은 모든 공개 메소드를 화살표 기능으로 빠르게 변경 한 결과입니다. 그 생각은 문제의 방법을 전통적인 뚱뚱한 화살 기능으로 바꾸기 위해 나에게 일어난 적이 결코 없습니다. 문제는 해결되고, 자존심은 타박상을 나타낸다.
'바닐라 자바 스크립트에서 this.columns는 obj.columns를 가리 킵니다. 아니, 그렇지 않습니다. Typescript 화살표 함수는 Javascript 화살표 함수와 동일하게 작동합니다. – SLaks
''나는 비구름 화살표 함수로 public 함수를 호출 할 수 있습니까? '물론. 왜 그게 효과가 없을까요? – SLaks
SLaks가 맞습니다. TypeScript는 JS의 위 첨자에 지나지 않습니다. JS를 하루 종일 TS로 쓸 수 있습니다. 유효한 JS는 유효한 TS입니다. – Muirik