我對道場非常陌生,所以請耐心等待。我目前正在創建一個dojo日曆,事件來自數據庫。日曆默認爲網格(每月)視圖,並在加載時進行初始調用以獲取第一組事件。默認視圖打電話來獲得當前月份事件+/-一週。我在Observable中使用JsonRest對象來完成此操作。dojox.calendar和JsonRest - 如何更新?
這是目前正在工作沒有問題。我遇到問題的地方是拉動/更新其他月份的數據。預期的效果是讓用戶點擊向前或向後按鈕移動到下一個或上一個月。發生這種情況時,我想查詢數據庫以查看要顯示的新事件。我能夠返回新數據並將其記錄到控制檯,但我無法將其顯示在日曆上。我確信我錯過了一些(希望)簡單的東西,但我無法弄清楚,或找到任何好的文檔。這是我有:
require(['dojo/parser',
'dojo/ready',
'dojox/calendar/Calendar',
'dojo/store/Observable',
'dojo/store/JsonRest',
'dijit/registry'],
function(parser, ready, Calendar, Observable, JsonRest, registry) {
ready(function(){
var MM = new Date().getMonth() + 1;
if (MM < 10)
{ MM = '0' + MM};
var YYYY = new Date().getFullYear();
var monthStore = new Observable(JsonRest({target: '/levelx/teamSchedule/getMonthInfo/'}));
calendar = new Calendar({
store: monthStore,
dateInterval: 'month',
style: styleText,
editable: false,
cssClassFunc: function(e){
return e.calendar;
},
query: '?q=' + YYYY + '-' + MM
}, 'calendar');
calendar.on("timeIntervalChange",function(e){
var YYYY = e.startTime.getFullYear();
var MM = e.startTime.getMonth() + 1;
if (MM < 10)
{ MM = '0' + MM};
monthStore.query('?q=' + YYYY + '-' + MM).then(function(results){
console.log(results);
});
});
我覺得我如此親密。就像我說的,我有正確的數據返回到控制檯(console.log(results)),但不知道如何讓它顯示在實際的日曆中。
剛纔試了,它不喜歡它:「遺漏的類型錯誤:對象的特性‘查詢’[控件dojox.calendar.Calendar,日曆]是不是一個函數」。 – Tony
答案是關閉的,我害怕..但從什麼是閱讀它的棘手讓jsonrest商店工作。試試看看irc.freenode.net上的#dojo – mschr