[英]AngularJS How to include a directive inside a template?
我正在嘗試使用AngularJS中的指令編寫可重用的組件。 我遇到的問題是在模板的可重用組件內部,我想使用另一個指令。 但是,此指令具有require
屬性,即使沒有通過要求,它也會引發錯誤,好像它未能通過要求一樣。 這是一個矮人。
找不到指令“內部”所需的控制器“ div”!
directive('inner', function(){
return {
require: 'div',
link: function (scope, elem, attrs){
console.log('Inner Link');
}
}
}).
directive('outer', function($timeout){
return {
restrict: 'E',
templateUrl: 'template.html',
link: function (scope, elem, attrs, ngModel){
console.log('Outer Link')
}
}
})
<div>
<div inner></div>
</div>
而不是div
用於內部元素和require,應該input
。
兩個錯誤。
require
使用必需的指令名稱,而不是您附加到其的元素。 outer
需要一個控制器,因為那是inner
需要的。 柱塞: http ://plnkr.co/edit/1epiLV1zjAlXlOodrkO3?p=preview
angular.module('plunker', []).
directive('inner', function(){
return {
require: '^outer',
link: function (scope, elem, attrs){
console.log('Inner Link');
}
}
}).
directive('outer', function($timeout){
return {
restrict: 'E',
templateUrl: 'template.html',
link: function (scope, elem, attrs, ngModel){
console.log('Outer Link')
},
controller: function() {
}
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.