加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

【Angular】——指令

发布时间:2020-12-17 09:09:32 所属栏目:安全 来源:网络整理
导读:在博客《AngularJS-mvc》中对指令已经有一个大概的认识,Angular内置的指令一般是以ng-*的形式存在,指令可使得我们方便快捷的达到想要的前台效果,内置指令的使用可以通过Angular提供的官方API学习使用。而Angular最吸引人的地方是用户可以自定义指令。首先

在博客《AngularJS-mvc》中对指令已经有一个大概的认识,Angular内置的指令一般是以ng-*的形式存在,指令可使得我们方便快捷的达到想要的前台效果,内置指令的使用可以通过Angular提供的官方API学习使用。而Angular最吸引人的地方是用户可以自定义指令。首先我们来认识一下自定义指令中几个参数的含义。

自定义指令:

使用module .directive(“指令名称”,function(){})来添加自定义的指令。

要调用自定义指令,HTML元素上需要添加自定义指令名。使用驼峰法来命名一个指令例如: runoobDirective,在页面使用时需要以 - 分割,runoob-directive。具体如下——

<body ng-app="myApp">
   <runoob-directive></runoob-directive>  <!--调用-->
   <script>
       var app = angular.module("myApp",[]);
 
       app.directive("runoobDirective",function() {
          return {
              restrict : "A",template :"<h1>这里写的是要显示在页面的内容</h1>"//templateUrl:temp.html
 
        };
      });
   </script>
</body>


restrict 值可以是以下几种:

E 作为元素名使用

A 作为属性使用 (默认方式)

C 作为类名使用

M 作为注释使用

调用:

元素名:<runoob-directive></runoob-directive>

属性: <divrunoob-directive></div>

类名: <divclass="runoob-directive"></div>

注释: <!--directive: runoob-directive - ->

以下为自定义指令hello不同调用方式的实例图:

template和templateURL使用其一

template其中写的是html的标签元素。

templateUrl:可以指定html页面,在html中可以写大量的html标签

templateCache:缓存,可以将指令缓存起来,在多个模块使用



replace和transclude

使用自定义指令‘hello’的页面

Replace

结果:<hello>指令内部的div内容会被替换显示的内容如下:


Transclude

结果:<hello>指令内部的div中的内容没有被替换,显示如下:


link

可以用来操作页面上的DOM,使用方法类似jquery的使用。在AngularJS中内置了简化版的jquery,称为jquerylight。

Link常规包括三个参数:scope、element、attrs,如果要使用第四个参数需要结合属性require。


require

作用类似继承,可以给其赋值另外一个指令名。当前指令继承指定指令,可以调用其中的方法。


Link实例

三个参数、结合jquerylight绑定事件:


四个参数、使用require,继承上一个指令superman:

小结

简单的了解了自定义指令中的一些属性及其用法,自定义指令是AngularJS诱人的原因之一,初步了解使用中进行深入。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读