Установите значение в функции ссылки директивы для модели AngularJs

0

У меня есть директива, как показано ниже.

JavaScript

app.directive('myDirectve',function() {

    function link(scope, element, attrs) {
        //Some code
        var computedModelValue = 100;
        //Some code
    }

    return {
        restrict: 'E',
        link: link
    };
});

HTML

<input ng-model="computedValue" disabled="disabled" />
<my-Directve></my-Directve>
{{computedValue}}

Теперь я хочу привязать значение computedModelValue в функции link к computedValue (Model) во входном теге.

Как я могу это достичь?

  • 0
    Функция ссылки обычно используется для управления пользовательским интерфейсом (с такими вещами, как jQuery). Вообще говоря, вы должны использовать его для вычислений. Есть ли причина, почему это значение модели вычисляется здесь, а не в контроллере?
  • 0
    @JamesConsidine Вы правы. Я реализовал виджет Jquery внутри функции ссылки, и этот виджет возвращает это вычисленное значение. Я хочу связать это значение с областью $ контроллера Angular.
Теги:

1 ответ

0
Лучший ответ

Проблема заключалась в том, что входной файл менялся виджетами JQuery в функции "link", а после его изменения не вызывал никакого события, чтобы уведомить angularJS, даже если он был привязан. Так что я вызвал событие после изменения значения текстового поля после изменение значения.

        var myModel = $('#id');
        myModel.val(val);
        myModel.trigger('input');

Ещё вопросы

Сообщество Overcoder
Наверх
Меню