[javascript] Knockout.js에서 데이터 옵저빙 방법은?
Knockout.js에서 데이터 옵저빙(관찰) 방법은 observable
기능을 사용하는 것입니다. observable
은 데이터 변화를 감지하고 이벤트를 발생시킬 수 있습니다.
사용법은 간단합니다. 먼저, observable
로 데이터를 선언하고 초기값을 할당합니다. 예를 들면 다음과 같습니다:
var myData = ko.observable(10);
이렇게 선언된 observable
변수는 다음과 같은 메소드를 사용할 수 있습니다:
ko.isObservable(myData)
: 해당 변수가observable
인지 확인합니다.myData()
:observable
의 값을 가져옵니다.myData(newValue)
:observable
의 값을 변경합니다.
예를 들어, observable
값을 변경하고 감지하는 코드는 다음과 같습니다:
myData(20); // 값을 변경합니다.
myData.subscribe(function(newValue) {
console.log("값이 변경되었습니다: " + newValue);
});
myData(30); // 이벤트가 발생하여 "값이 변경되었습니다: 30"이 출력됩니다.
또한, observable
기능을 객체에 적용할 수도 있습니다. 예를 들어, 다음과 같은 객체를 정의하고 observable
을 사용하여 값을 설정하고 가져올 수 있습니다:
var myObject = {
name: ko.observable("John"),
age: ko.observable(25)
};
console.log(myObject.name()); // "John" 출력
myObject.age(30); // 값을 변경
console.log(myObject.age()); // 30 출력
이렇게 observable
을 사용하여 데이터를 옵저빙할 수 있으며, 데이터 변경에 대한 필요한 로직을 추가하여 원하는 동작을 수행할 수 있습니다.
더 많은 정보와 예제 코드는 Knockout.js 공식 문서(https://knockoutjs.com/documentation/observables.html)를 참조하시기 바랍니다.