(学习笔记)angular自定义指令

angularjs有两种创建自定义指令的方式:

1.module.directive(name,directiveFactory)

2.@see $compileProvider.directive()

var app=angular.module('myApp',[],function($compileProvider){
    	$compileProvider.directive('nameName',function(){
    	
    		//请不要使用ng为指令命名,这样可能会和angular内置指令冲突
    		//如果指令的名字为xxx-yyy,在设置指令的名字时应为xxxYyy驼峰式声明法
    	
        	return{
        		/**
        		自定义指令选项
        		**/
        		};
        	});
        });

指令定义选项:
priority
terminal
scope
controller
controllerAs
require
restrict
template
templateUrl
replace
transclude
compile
link

自定义选项详解:

restrict:如果忽略restrict,默认为A
如果打算支持ie8,请使用基于属性和样式的指令
E元素<name></name>
C样式<span class="name"></span>
A属性<span name></name>
M注释<!--directive:name-->
template
template:定义模板内容,这个内容会根据replace参数设置节点或替换节点内容.
例:template:'<div>123</div>'
replace:如果此配置为true则替换指令所在的元素,如果为false或者不指定,则把当前指令追加到所在元素内部
注意:最好设置replace属性为true,因为自定义标签在某些情况下不识别,即自定义的标签不符合H5规范
对于restrict为元素(E)在最终效果中多余的,所有replace通常设置为true

transclude
将将要被替换的标签内容加在替换后的标签内容之后
例:

template:'<div>替换数据 <spa
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值