我对角度JS很新,我发现它是一个陡峭的学习曲线,我觉得我真的错过了这里的重点但是这里有:
我想从控制器向我的页面添加一个指令.所以我想如果我将指令标签添加到页面,指令和相关的控制器/模板等都会添加它.在阅读了$ compile方法之后,我认为这将用于将此指令绑定到其新创建的标记.这部分在下面被注释掉了,但无论是否有这个,我需要登录这个词出现,它的控制器来控制它?
当加载时指针标记在页面上时,我可以在web上找到许多相似的例子,并且可以使它们正常工作,所以这就是认为它与$ compile方法有关 - 我错过了什么?
HTML:
<div ng-app="application" ng-controller="myController"></div>
Run Code Online (Sandbox Code Playgroud)
JS:
var myApp = angular.module('application', []);
myApp.controller('myController', ['$scope', function($scope) {
function showLoginDirective () {
$scope.login = angular.element(document.createElement('login'));
angular.element(document.body).append($scope.login);
};
showLoginDirective();
}
]);
angular.module('directives', [])
.directive('login', function($compile) {
return {
restrict: 'E',
controller: 'LoginController',
template: '<div>login</div>',
link: function(scope, element, attrs) {
//$compile(element.contents())(scope.$new);
console.log('should I not have a div containing login controlled by loginController at this point?');
}
};
});
Run Code Online (Sandbox Code Playgroud)
上面的代码也在这里:http://jsfiddle.net/d5n6L/7/