[]
테이블 시트는 웹페이지를 새로 고침하지 않고도 데이터 원본의 해당 데이터를 실시간으로 주입할 수 있는 기능을 제공합니다. 이 기능은 예를 들어, 라이브 서버에서 연결 오류가 발생했을 때 데이터 소스를 백업 서버로 전환하는 등의 다양한 상황에서 유용하게 사용할 수 있습니다.
데이터 원본을 동적으로 업데이트하려면 아래 단계를 따르시기 바랍니다:
fromJSON 메서드를 호출합니다.
spread.fromJSON(spreadJson);
Promise의 resolve 메서드에서 데이터 소스를 객체로 래핑하여 테이블의 datasource 옵션을 업데이트합니다.
let myTable = spread.dataManager().tables["myTable"];
myTable.options = {
remote: {
read: function () {
return Promise.resolve(dataSource);
}
}
};
테이블의 fetch 메서드를 reload 인수를 사용하여 호출합니다. 이 단계는 데이터 원본을 새로고침하고, setDataView 메서드를 통해 업데이트된 데이터 원본을 시트에 반영합니다
myTable.fetch(true).then(function()
{
let myView = myTable.views["myView"];
let sheet = spread.getActiveSheetTab();
sheet.setDataView(myView);
});
참고: View의
fetch
메서드와 Table의fetch
메서드는 동일한reload
인수를 갖습니다. 따라서setDataView
메서드를 사용하면 데이터 뷰를 다시 가져온 후 캐시 상태를 초기화할 수 있습니다.