Jak wywołać metodę zdefiniowaną w dyrektywie potomnej, w ramach detektora nadrzędnego dyrektywy nadrzędnej.Wywołanie funkcji dyrektywy potomnej z dyrektywy nadrzędnej w AngularJs
angular.module('editableDivDirective', [])
.directive("editableDiv", function() {
var directive = {};
directive.restrict = 'E';
directive.replace = 'true';
directive.scope = {};
directive.transclude = 'true';
directive.template =
'<div id="wrapper">' +
'<div required class="text-area" name="search" contenteditable="true" ng-model="formData.text"></div>' +
'<button type="submit" class="btn btn-warning add-button" id="submit" ng-click="createTodo()">Add</button>' +
'</div>';
directive.link = function(scope, element, attrs, controller) {
scope.createTodo = function(){
// do something
// Call child directive setPlaceholderText()
}
};
return directive;
})
.directive("contenteditable", function() {
var directive = {};
directive.require = ['^editableDiv','?ngModel'];
directive.restrict = 'A';
directive.scope = {};
directive.link = function(scope, element, attrs, ctrls) {
var ngModel = ctrls[1];
var editableDivController = ctrls[0];
function setPlaceholderText(){
return element.html("Hello World");
}
return directive;
})
chcę zadzwonić dyrektywa dziecko setPlaceholderText(), gdy 'scope.createTodo()' dyrektywy rodzic jest tzw.
Jak można to zrobić.
Jaki jest twój konkretny przypadek użycia? Co próbujesz? – Patrick
@Patrick dodałem więcej szczegółów. Przepraszam, że nie było mojego systemu, więc nie mogłem dodać tego na czas. – jsbisht