我正在創建一個新的應用程序與淘汰賽,我有一個非常奇怪的錯誤。我使用了一段時間的淘汰賽,之前從未有過這個錯誤。敲除意外標識符「。」
每當我嘗試使用「$ root」。 pseudoselector,淘汰賽返回我:
Uncaught SyntaxError: Unable to parse bindings.
Bindings value: click: .createAlarm
Message: Unexpected token .
在這種情況下,綁定是:
<button class='btn' data-bind='click: $root.createAlarm'>New alarm</button>
同樣的事情發生了,當我試圖引用一個foreach結合內部的視圖模型的功能。
這裏是我的代碼:
function ViewModel() {
var self = this;
// data
// set initial time for alarm
self.alarmHour = ko.observable(moment().hours());
self.alarmMinute = ko.observable(moment().minutes());
self.alarmSecond = ko.observable(moment().seconds());
self.chosenAlarmTrack = ko.observable();
self.alarms = ko.observableArray();
// methods
self.createAlarm = function() {
var timeNow = moment()
var alarmTime = getNewTime(self.alarmHour(), self.alarmMinute(), self.alarmSecond());
var alarmTime = moment(alarmTime)
if (timeNow.isAfter(alarmTime)) {
alarmTime.add(1, "day");
}
self.alarms.push(new Alarm(alarmTime, self.chosenAlarmTrack()))
}
}
$(document).ready(function() {
var vm = new ViewModel();
ko.applyBindings(vm);
})
哪些類型的網絡服務器/託管服務提供商/反轉您使用代理?從錯誤消息看來,東西從您的HTML中刪除了'$ root'文本... – nemesv 2014-10-28 06:39:41
我正在使用本地主機。我認爲這可能是一些編碼問題,但似乎並不是 – 2014-10-28 10:16:35
的確,在HTML中,$ root不在那裏。我使用PHP – 2014-10-28 10:26:40