AngularJS学习篇(三)

开创自定义的命令

除外 AngularJS 内置的授命外,大家还足以创设自定义指令。

你能够利用 .directive 函数来添加自定义的通令。

要调用自定义指令,HTML 成分上急需加上自定义指令名。

利用驼峰法来命名多个发令, myAngular,
但在行使它时索要以  分割, my-angular:

您能够由此以下方法来调用指令:

  • 元素名
  • 属性
  • 类名
  • 注释

元素名

<!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>

限定使用

你能够界定你的吩咐只好通过特定的办法来调用。

restrict 值能够是以下两种:

  • E 作为成分名使用
  • A 作为品质使用
  • C 作为类名使用
  • M 作为注释使用

restrict 私下认可值为 EA, 即能够通过元素名和总体性名来调用指令。

 

相关文章