我有點擔心,如果我問一個noob問題,或者如果它是一個JavaScript功能,我一直沒能找到很多,儘管谷歌搜索
我增加了的簡單的指令編程使用$編譯和所有工作正常。
我的問題是這條線
var el = $compile(newElement)($scope);
如何雙括號工作/他們在做什麼?完整的代碼以供參考,但它只是我不確定的括號。
var myApp = angular.module('myApp', []);
myApp.directive('myDirective', function() {
return {
template: 'Hello',
restrict: 'E'
}
});
myApp.controller('mainController', [
'$scope', '$compile', function($scope, $compile) {
$scope.addDirective = function() {
var newElement = angular.element(document.createElement('my-directive'));
var el = $compile(newElement)($scope);
angular.element(document.body).append(el);
};
}
]);
這不是任何先進的功能。 '$ compile(newElement)'返回一個函數。然後使用第二組parens立即用'$ scope'調用該函數。 – aarosil 2015-02-23 20:31:01