#javascript #jquery
#javascript #jquery
Вопрос:
код:
H.Binder.TaskColor = function ($elem, role, value, data) {
this.element = $elem;
this.value = value;
this.data = data.Activity;
this.init = function () {
var ProgressPercent = this.data.ProgressPercent;
if (ProgressPercent < 50)
this.element.addClass("style1");
else
this.element.addClass("style2");
}
this.refresh = function () {
this.init();
}
}
HTML:
TaskItemTemplate="<div class='rq-gc-taskbar' data-bind='TaskColor: Activity.ProgressPercent' ><div class='rq-gc-taskbar-label'></div></div>"
Ошибка:
0x800a139e — Ошибка времени выполнения JavaScript: не удается проанализировать привязки.
Сообщение: ReferenceError: ‘Activity’ не определено;
Значение привязки: TaskColor: Activity.ProgressPercent
Комментарии:
1. Что такое «данные»? И где код, который его установил?
2. Я чувствую, что здесь отсутствует какой-то важный код. Не могли бы вы поделиться всем файлом? Особенно там, где H.Binder. Вызывается функция TaskColor и везде, где появляется переменная с именем «Activity». Это определенно проблема с областью действия, просто нужно выяснить, где область действия путается.
3. Вы проверили, передаете ли вы
Activity
данные?4. Проверьте значение данных в quick watch и посмотрите, действительно ли оно содержит объект Activity или нет.
5. функция получает любое значение, оно не входит в саму функцию.