2016-10-10 5 views
0

이들은 knockoutjs.com 튜토리얼에서 제공 한 것입니다.녹아웃 튜토리얼 - "this"속성 바인딩?

누구든지 fullName 속성의 끝에있는 "this"가 무엇을 설명 할 수 있습니까? JS 원리를 여기에서 일하게하여 더 자세히 읽어 보시기 바랍니다. 감사합니다!

enter image description here

왜 totalSurcharge 속성은 "이"로 끝을 필요로하지 않는다? 함수는의 계산 값 (제 ARG) 실행을 결정할 때

enter image description here

답변

3

ko.computed에 두 번째 인수는 this의 값을 설정한다. fullName의 경우이 함수는 this.firstNamethis.lastName을 사용합니다. 따라서 호출 될 때마다 this이 실제로 우리의 뷰 모델인지 확인하고자합니다.

두 번째 경우에는 적절한 값 this을 가리키는 self이라는 변수가 만들어졌습니다. 그런 다음 selfthis (동적 임)이 아닌 계산 된 함수 내에서 사용됩니다. 두 번째 경우에는 self을 두 번째 인수로 넣을 수 있고 그 다음에 this을 함수 내에서 사용할 수 있습니다.

이것은 실제로 스타일의 문제입니다. 내 의견으로는, self과 같은 변수의 사용은 요즘 스타일을 벗어났습니다. 결국 그것은 개인적 선호에 달려 있습니다. 여기에 자바 스크립트에서 thisDifference between knockout View Models declared as object literals vs functions

좋은 튜토리얼 : https://derickbailey.com/email-courses/masteringthis/

+0

또한 Theres는 KO로의 문서 페이지에있는 작은 설명 : HTTP : // knockoutjs 여기

도 KO에서 this에 대해 설명 다른 대답이다. co.kr/documentation/computedObservables.html –