前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >AngularJS指令「建议收藏」

AngularJS指令「建议收藏」

作者头像
全栈程序员站长
发布2022-09-15 10:55:22
1.1K0
发布2022-09-15 10:55:22
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

AngularJS指令

AngularJS 通过被称为 指令 的新属性来扩展 HTML。 AngularJS 通过内置的指令来为应用添加功能。 AngularJS 允许你自定义指令。

小栗子:

代码语言:javascript
复制
<div ng-app="" ng-init="firstName='John'"> <p>在输入框中尝试输入:</p> <p>姓名:<input type="text" ng-model="firstName"></p> <p>你输入的为: { 
   { firstName }}</p> </div>

上面例子的分析: ng-app 指令初始化一个 AngularJS 应用程序。 ng-init 指令初始化应用程序数据。 ng-model 指令把元素值(比如输入域的值)绑定到应用程序。

使用 *ng-init 不是很常见。您将在控制器一章中学习到一个更好的初始化数据的方式。

1.关于数据的绑定:

上面实例中的{ { firstName }}表达式是一个AngularJS数据绑定表达式。 { { firstName }}同步了 AngularJS 表达式AngularJS 数据。 { { firstName }} 是通过 ng-model=”firstName” 进行同步。

2.重复HTML元素

ng-repeat指令会重复一个HTML元素:

代码语言:javascript
复制
<div ng-app="" ng-init="names=['Jani','Hege','Kai']"> <p>使用 ng-repeat 来循环数组</p> <ul> <li ng-repeat="x in names"> { 
   { x }} </li> </ul> </div>

ng-repeat指令用在一个对象数组上:

代码语言:javascript
复制
<div ng-app="" ng-init="names=[ {name:'Jani',country:'Norway'}, {name:'Hege',country:'Sweden'}, {name:'Kai',country:'Denmark'}]"> <p>循环对象:</p> <ul> <li ng-repeat="x in names"> { 
   { x.name + ', ' + x.country }} </li> </ul> </div>

3.创建自定义的指令

使用 .directive 函数来添加自定义的指令,要调用自定义指令,HTML元素上需添加自定义指令名。 使用驼峰发来命名一个指令,myDirective,但是在使用它时需要以 – 分割,my-directive

代码语言:javascript
复制
<body ng-app="myApp">

<my-directive></my-directive>

<script> var app = angular.module("myApp", []); app.directive("myDirective",function(){ 
     return { template : "<h1>自定义指令</h1>" }; }); </script>

</body>

你可以通过以下方式调用指令: 1.元素名

代码语言:javascript
复制
<my-directive></my-directive>

2.属性

代码语言:javascript
复制
<div my-directive></div>

3.类名

代码语言:javascript
复制
<div class="my-directive"></div>

4.注释

代码语言:javascript
复制
<!-- directive: my-directive -->

*.限制调用

代码语言:javascript
复制
var app = angular.module("myApp", []);
app.directive("runoobDirective", function() { 
   
    return {
        restrict : "A",
        template : "<h1>自定义指令!</h1>"
    };
});

restrict值可以是以下几种:

代码语言:javascript
复制
E 作为元素名使用
A 作为属性使用
C 作为类名使用
M 作为注释使用

默认是EA。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/164222.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • AngularJS指令
    • 小栗子:
      • 1.关于数据的绑定:
        • 2.重复HTML元素
          • 3.创建自定义的指令
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档