Ошибка ссылки: «Активность» не определена в jquery

#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. функция получает любое значение, оно не входит в саму функцию.