()
을 가지고 있고 ()
을 갖지 않는 데 차이점은 무엇입니까?녹아웃 데이터에서 다른 점은 무엇입니까?
처럼 내 뷰 모델에서
data-bind="text: firstName"
data-bind="text: firstName()"
:
이this.firstName = ko.observable("Ben");
모두 data-bind
이 작업을 수행 할 수 있습니다. 그래서 다른 무엇입니까?
()
을 가지고 있고 ()
을 갖지 않는 데 차이점은 무엇입니까?녹아웃 데이터에서 다른 점은 무엇입니까?
처럼 내 뷰 모델에서
data-bind="text: firstName"
data-bind="text: firstName()"
:
이this.firstName = ko.observable("Ben");
모두 data-bind
이 작업을 수행 할 수 있습니다. 그래서 다른 무엇입니까?
괄호없이 관찰 가능한 것은 관찰 가능 자체입니다. 괄호를 사용하면 내용 (관찰 대상이 보유하는 값)이됩니다. 대부분의 경우/또는을 사용할 수 있지만 양방향 바인딩 (value
또는 checked
)의 경우 관찰 가능 객체에 할당 할 수 있어야하므로 이 아니고에는 괄호가 있어야합니다. 반면 표현을 만들려면 내용이 필요합니다. 예 : !someBoolean()
answered before과 유사한 질문이 있습니다.
요점은 text: firstName
를 사용하는 경우 text: firstName()
를 사용하는 경우, 당신은 당신이 바인딩에 관찰의 값을 전달하고, 바인딩 text
에 관찰을 전달하고있는 것입니다. 두 경우 모두 단방향 바인딩이므로 바인딩이 동일하게 작동하며 대부분의 바인딩은 관찰 가능 또는 일반 값 중 하나를 사용하도록 설정됩니다. 그러나 value
과 같은 양방향 바인딩을 사용하는 경우 바인딩이 관찰 가능 항목에 다시 쓸 수 있도록 첫 번째 형식을 사용해야합니다.