AngularJS---自定义指令
AngularJS提供了一系列的内置指令,如ng开头的指令,同时AngularJS也允许用户自定义指令。
目录:
1.自定义指令
2.使用自定义指令
3.自定义指令的内嵌使用
自定义指令
AngularJS中使用directive()方法来自定义指令,directive() 方法可以接受两个参数:
name(字符):指令的名字,用来在视图中引用特定的指令
factory_function(函数):这个函数返回一个对象,其中定义了指令的全部行为
例如:创建一个test指令:
var app = angular.module('myApp',[]);
app.directive('hello',function(){
return {
restrict:'AECM',
template:'<div>hello world</div>',
replace:true
};
});
说明:
在directive方法的第二个函数参数中,返回了一个对象,字段的意义如下:
restrice:定义了标签的使用方法,一共四种,分别是AECM
template:定义标签的模板。里面是用于替换自定义标签的字符串
repalce:是否替换
另外还有transclude:标识是否嵌套
使用自定义指令
指令在html中的使用有4中方法,分别对应restrice的标签的4个使用方法AECM
A:属性
<div hello></div>--------><div>hello world</div>
E:元素
<hello></hello>--------><div hello="">hello world</div>
C:样式(class的值)
<div class="hello"></div>------><div class="hello">hello world</div>
M:注释
<!-- directive:hello ----------->各个版本不一样
自定义指令的内嵌使用
app.directive('test',function(){
return {
restrict:'AECM',
template:'<div>hello <div ng-transclude></div> world</div>',
transclude:true
};
});
说明:自定义指令的内嵌使用需要将transclude字段赋值为true,template中使用ng-transclude来确定内嵌的位置。
实例代码如下:
<!DOCTYPE>
<html ng-app="myApp">
<head>
<meta charset="utf-8" />
<script src="https://code.angularjs.org/1.3.1/angular.min.js"> </script>
</head>
<body>
<div></div>
<hello></hello>
<div></div>
<div hello></div>
<div></div>
<div class="hello"></div>
<div></div>
<!-- directive:hello -->
<div></div>
<hello></hello>
<div></div>
<test></test>
<script type="text/javascript">
var app = angular.module('myApp',[]);
app.directive('hello',function(){
return {
restrict:'AECM',
template:'<div>hello world</div>',
replace:true
};
}); app.directive('test',function(){
return {
restrict:'AECM',
template:'<div>hello <div ng-transclude></div> world</div>',
transclude:true
};
});
</script>
</body>
</html>

AngularJS---自定义指令的更多相关文章
- AngularJs自定义指令详解(1) - restrict
下面所有例子都使用angular-1.3.16.下载地址:http://cdn.bootcss.com/angular.js/1.3.16/angular.min.js 既然AngularJs快要发布 ...
- AngularJS: 自定义指令与控制器数据交互
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- 浅析AngularJS自定义指令之嵌入(transclude)
AngularJS自定义指令的嵌入功能与vue的插槽十分类似,都可以实现一些自定义内容展现.在开始之前先简单介绍下自定义指令的transclude属性和AngularJS的内置指令ng-transcl ...
- angularjs自定义指令Directive
今天学习angularjs自定义指令Directive.Directive是一个非常棒的功能.可以实现我们自义的的功能方法. 下面的例子是演示用户在文本框输入的帐号是否为管理员的帐号"Adm ...
- angularJs 自定义指令传值---父级与子级之间的通信
angularJs自定义指令用法我忽略,之前有写过,这里只说一下父子级之间如何传值: 例如: 模块我定义为myApp,index.html定义 <my-html bol-val="bo ...
- AngularJs自定义指令详解(6) - controller、require
在前面文章中提到一旦声明了require,则链接函数具有第四个参数:controller. 可见require和controller是配合使用的. 在自定义指令中使用controller,目的往往是要 ...
- angularJs自定义指令.directive==类似自定义标签
创建自定义的指令 除了 AngularJS 内置的指令外,我们还可以创建自定义指令. 你可以使用 .directive 函数来添加自定义的指令. 要调用自定义指令,HTML 元素上需要添加自定义指令名 ...
- angularJS——自定义指令
主要介绍指令定义的选项配置 //angular指令的定义,myDirective ,使用驼峰命名法 angular.module('myApp', []) .directive('myDirectiv ...
- AngularJS自定义指令(Directives)在IE8下的一个坑
在项目中,由于要兼容到IE8,我使用1.2.8版本的angularJS.这个版本是支持自定义指令的.我打算使用自定义指令将顶部的header从其他页面分离.也就是实现在需要header的页面只用在&l ...
- 利用angularJs自定义指令(directive)实现在页面某一部分内滑块随着滚动条上下滑动
最近老大让我一个效果实现在页面某一部分内滑块随着滚动条上下滑动,说明一下我们项目使用技术angularJs.大家都知道,使用jquery很好实现. 那么angular如何实现呢,我用的是自定义指令(d ...
随机推荐
- google你懂得
地址 https://github.com/racaljk/hosts
- SQLServer将表数据导出为Insert语句
从网上找到的方法,不过很不错,记录下来,也算是分享下~~ 有一个表,city,有列:cityID,cityName;将此表中所有数据,变为insert语句 select 'insert into ta ...
- Pyhon环境搭建-window
1.安装python3.4.3版本 地址:(64位)https://www.python.org/ftp/python/3.4.3/python-3.4.3.amd64.msi (32位)http:/ ...
- STM32启动代码分析 IAR 比较好
stm32启动代码分析 (2012-06-12 09:43:31) 转载▼ 最近开始使用ST的stm32w108芯片(也是一款zigbee芯片).开始看他的启动代码看的晕晕呼呼呼的. 还好在c ...
- New XAMPP security concept:错误解决方法
New XAMPP security concept:错误解决方法 (2014-03-06 16:07:46) 转载▼ 分类: php 在Linux上配置xampp后远程访问域名报错: New X ...
- 页码条--字符串拼接--重写HtmlHelper
public static HtmlString ShowPageNavigate(this HtmlHelper htmlHelper, int currentPage, int pageSize, ...
- haslayout
什么是 haslayout ? haslayout 是Windows Internet Explorer渲染引擎的一个内部组成部分.在Internet Explorer中,一个元素要么自己对自身的内容 ...
- Linux记录从此开始
Linux记录从此开始~ 希望自己多写代码同时多记录~
- GPU 加速NLP任务(Theano+CUDA)
之前学习了CNN的相关知识,提到Yoon Kim(2014)的论文,利用CNN进行文本分类,虽然该CNN网络结构简单效果可观,但论文没有给出具体训练时间,这便值得进一步探讨. Yoon Kim代码:h ...
- 两个list取不同值
转自同名博文,未知真正出处,望作者见谅 如题:有List<String> list1和List<String> list2,两个集合各有上万个元素,怎样取出两个集合中不同的元素 ...