除了 AngularJS 內置的指令外,咱們還能夠建立自定義指令。html
你能夠使用 .directive 函數來添加自定義的指令。app
要調用自定義指令,HTML 元素上須要添加自定義指令名。函數
使用駝峯法來命名一個指令, myAngular, 但在使用它時須要以 - 分割, my-angular:spa
你能夠經過如下方式來調用指令:rest
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="angular-1.6.3/angular.js"></script> </head> <body> <div ng-app="myDirective"> <my-angular></my-angular> </div> <script> var app=angular.module("myDirective",[]); app.directive("myAngular", function() {//注意名稱myAngular---<my-angular> return { template : "<p>自定義指令!</p>" }; }); </script> </body> </html>
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="https://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script> </head> <body ng-app="myApp"> <div runoob-directive></div> <script> var app = angular.module("myApp", []); app.directive("runoobDirective", function() { return { template : "<h1>自定義指令!</h1>" }; }); </script> </body> </html>
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="https://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script> </head> <body ng-app="myApp"> <div class="runoob-directive"></div> <script> var app = angular.module("myApp", []); app.directive("runoobDirective", function() { return { restrict : "C", template : "<h1>自定義指令!</h1>" }; }); </script> <p><strong>注意:</strong> 你必須設置 <b>restrict</b> 的值爲 "C" 才能經過類名來調用指令。</p> </body> </html>
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="https://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script> </head> <body ng-app="myApp"> <!-- directive: runoob-directive --> <script> var app = angular.module("myApp", []); app.directive("runoobDirective", function() { return { restrict : "M", replace : true, template : "<h1>自定義指令!</h1>" }; }); </script> <p><strong>注意:</strong> 咱們須要在該實例添加 <strong>replace</strong> 屬性, 不然評論是不可見的。</p> <p><strong>注意:</strong> 你必須設置 <b>restrict</b> 的值爲 "M" 才能經過註釋來調用指令。</p> </body> </html>
你能夠限制你的指令只能經過特定的方式來調用。code
restrict 值能夠是如下幾種:cdn
E
做爲元素名使用A
做爲屬性使用C
做爲類名使用M
做爲註釋使用restrict 默認值爲 EA
, 便可以經過元素名和屬性名來調用指令。htm