0
매개 변수가 HTML에서 함수로 전달되는 방법에 대해 혼란스러워합니다. colorTest 기능에서 여러 매개 변수를 사용하여 녹아웃 클릭 바인딩
<tbody data-bind="foreach: colorItem">
<tr>
<td data-bind="click: $root.colorTest.bind($data, 'red', 'blue'), text: 'color'"></td>
</tr>
</tbody>
public colorTest(data, param1, param2) {
if (param1 == 'red'){
// do something
}
, 나는 값 '블루'를 개최 값 '빨간색'과 'PARAM2'를 개최 $ 데이터를 보유 '데이터'와 'PARAM1'를 기대합니다.
그러나 $ 데이터는 항상 마지막 매개 변수 필드로 전달됩니다. 따라서 colorTest 함수에서 data = 'red', param1 = 'blue', param2 = '$ data'입니다.
이것이 녹아웃이 작동하는 방식입니까? $ data는 HTML 데이터 바인딩에서 처음으로 배치 되더라도 항상 마지막 매개 변수로 함수에 전달됩니까?
감사합니다. 이 작동합니다. 하지만 $ 데이터가 명시 적으로 전달되어야합니까? 당신이 말한대로, 녹아웃 자동 바인딩 된 인수 (나는 이것을 보았다) 후 $ 데이터와 $ 이벤트를 보냅니다. 실제로 $ data를 두 번 보내고 있습니까? "... colorTest.bind ($ root, 'red', 'blue')를 사용하고 내 함수의 세 번째 매개 변수로 $ 데이터를 캡처하여"public colorTest (param1, param2 , 데이터) "? – nanonerd
네, 잘 작동합니다. –