Я хотел использовать директиву, чтобы иметь некоторые функциональные возможности для редактирования в моем интерфейсе. Это директива Я использую для этого: http://icelab.com.au/articles/levelling-up-with-angularjs-building-a-reusable-click-to-edit-directive/angular.js директива смены двухсторонней привязки
'use strict';
angular.module('jayMapApp')
.directive('clickToEdit', function() {
return {
templateUrl: 'directives/clickToEdit/clickToEdit.html',
restrict: 'A',
replace: true,
scope: {
value: '=clickToEdit',
method: '&onSave'
},
controller: function($scope, $attrs) {
$scope.view = {
editableValue: $scope.value,
editorEnabled: false
};
$scope.enableEditor = function() {
$scope.view.editorEnabled = true;
$scope.view.editableValue = $scope.value;
};
$scope.disableEditor = function() {
$scope.view.editorEnabled = false;
};
$scope.save = function() {
$scope.value = $scope.view.editableValue;
$scope.disableEditor();
$scope.method();
};
}
};
});
Я добавил второй атрибут директивы, чтобы вызвать метод после, когда пользователь изменяет значение, а затем обновить базу данных и т.д. Метод ('$ onSave здесь) называется прекрасным, но кажется, что родительская область еще не обновлена, когда я вызываю метод в конце директивы. Есть ли способ вызвать метод, но родительская область обновлена точно?
Спасибо заранее, Майкл
попробуйте добавить метод под функцию ссылки, а не в контроллер. Он должен работать. также, можете ли вы показать свой HTML? – SoluableNonagon