Привязка данных кнопки kendo ui mvvm включена с функцией - PullRequest
0 голосов
/ 27 апреля 2018

Я хочу объединить 2 переменные из viewModel.

Внутри шаблона у меня есть кнопка:

<a data-role="button" id="#=index#" 
   data-bind="events: { click: onAddClick }, 
              enabled: #= checkIfAddButtonEnabled(index)#">
   Add
</a>

и внутри того же представления HTML-файл, у меня также есть функция:

<script>
  function checkIfAddButtonEnabled(index){
    return X.details.viewModel.canAddStuff[index] && !X.details.viewModel.isStuffDisabled;
  };
</script>

Логические значения, возвращаемые функцией, верны, но они явно не видны привязкой enabled.

Это ожидается? Должен ли я отказаться и вместо этого добавить новое логическое значение для каждого объекта в массиве, который использует этот шаблон?

РЕДАКТИРОВАТЬ: я отказался от этого и использовал новое свойство в моем объекте, переданном вместо шаблона, но мой вопрос все еще действителен, я все еще хотел бы знать, возможно ли привязать к функции.

1 Ответ

0 голосов
/ 27 апреля 2018

Я знаю только один способ в этом случае. Вы можете сделать

<a data-role="button" id="#=index#" 
   data-bind="events: { click: onAddClick }, 
              enabled: checkIfAddButtonEnabled">
   Add
</a>

А в модели что-то вроде:

checkIfAddButtonEnabled: function () {
  //get index and check bool value
  return value;
},
...