AngularJS实现自定义指令及指令配置项的方法


Posted in Javascript onNovember 20, 2017

本文实例讲述了AngularJS实现自定义指令及指令配置项的方法。分享给大家供大家参考,具体如下:

AngularJS自定义指令有两种写法:

//第一种
angular.module('MyApp',[])
.directive('zl1',zl1)
.controller('con1',['$scope',func1]);
function zl1(){
  var directive={
    restrict:'AEC',
   template:'this is the it-first directive',
  };
  return directive;
};
function func1($scope){
  $scope.name="alice";
}
//第二种
angular.module('myApp',[]).directive('zl1',[ function(){
 return {
  restrict:'AE',
  template:'thirective',
  link:function($scope,elm,attr,controller){
   console.log("这是link");
  },
  controller:function($scope,$element,$attrs){
   console.log("这是con");
  }
 };
}]).controller('Con1',['$scope',function($scope){
 $scope.name="aliceqqq";
}]);

指令配置项

angular.module('myApp', []).directive('first', [ function(){
  return {
    // scope: false, // 默认值,共享父级作用域
    // controller: function($scope, $element, $attrs, $transclude) {},
    restrict: 'AE', // E = Element, A = Attribute, C = Class, M = Comment
    template: 'first name:{{name}}',
  };
}]).directive('second', [ function(){
  return {
    scope: true, // 继承父级作用域并创建指令自己的作用域
    // controller: function($scope, $element, $attrs, $transclude) {},
    restrict: 'AE', // E = Element, A = Attribute, C = Class, M = Comment
    //当修改这里的name时,second会在自己的作用域中新建一个name变量,与父级作用域中的
    // name相对独立,所以再修改父级中的name对second中的name就不会有影响了
    template: 'second name:{{name}}',
  };
}]).directive('third', [ function(){
  return {
    scope: {}, // 创建指令自己的独立作用域,与父级毫无关系
    // controller: function($scope, $element, $attrs, $transclude) {},
    restrict: 'AE', // E = Element, A = Attribute, C = Class, M = Comment
    template: 'third name:{{name}}',
  };
}])
.controller('DirectiveController', ['$scope', function($scope){
  $scope.name="mike";
}]);

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
HTML Dom与Css控制方法
Oct 25 Javascript
Extjs4 消息框去掉关闭按钮(类似Ext.Msg.alert)
Apr 02 Javascript
可简单避免的三个JS发布错误的详细介绍
Aug 02 Javascript
分享20个提升网站界面体验的jQuery插件
Dec 15 Javascript
Vue 仿QQ左滑删除组件功能
Mar 12 Javascript
使用vue打包时vendor文件过大或者是app.js文件很大的问题
Jun 29 Javascript
小程序实现五星点评效果
Nov 03 Javascript
JQuery Ajax执行跨域请求数据的解决方案
Dec 10 jQuery
JavaScript常用事件介绍
Jan 21 Javascript
Vue利用Blob下载原生二进制数组文件
Sep 25 Javascript
详解element-ui级联菜单(城市三级联动菜单)和回显问题
Oct 02 Javascript
解决Echarts 显示隐藏后宽度高度变小的问题
Jul 19 Javascript
详解webpack + react + react-router 如何实现懒加载
Nov 20 #Javascript
详细分析jsonp的原理和实现方式
Nov 20 #Javascript
three.js中文文档学习之通过模块导入
Nov 20 #Javascript
JS写XSS cookie stealer来窃取密码的步骤详解
Nov 20 #Javascript
浅谈Vue SSR 的 Cookies 问题
Nov 20 #Javascript
three.js中文文档学习之创建场景
Nov 20 #Javascript
Vue 中批量下载文件并打包的示例代码
Nov 20 #Javascript
You might like
加强版phplib的DB类
2008/03/31 PHP
深入解析yii权限分级式访问控制的实现(非RBAC法)
2013/06/13 PHP
php实现水仙花数示例分享
2014/04/03 PHP
PHP正则表达式过滤html标签属性(DEMO)
2016/05/04 PHP
php中简单的对称加密算法实现
2017/01/05 PHP
JavaScript使用技巧精萃[代码非常实用]
2008/11/21 Javascript
js 操作select相关方法函数
2009/12/06 Javascript
Exjs 入门篇
2010/04/07 Javascript
jquery插件之信息弹出框showInfoDialog(成功/错误/警告/通知/背景遮罩)
2013/01/09 Javascript
jQuery实现多按钮单击变色
2014/11/27 Javascript
JavaScript SHA1加密算法实现详细代码
2016/10/06 Javascript
AngularJS实现页面定时刷新
2017/03/14 Javascript
微信小程序提取公用函数到util.js及使用方法示例
2019/01/10 Javascript
easyUI使用分页过滤器对数据进行分页操作实例分析
2020/06/01 Javascript
js实现弹窗效果
2020/08/09 Javascript
Python性能优化技巧
2015/03/09 Python
Python实现竖排打印传单手机号码易撕条
2015/03/16 Python
Python脚本处理空格的方法
2016/08/08 Python
Python读取图片为16进制表示简单代码
2018/01/19 Python
Python+tkinter使用40行代码实现计算器功能
2018/01/30 Python
如何用Python来搭建一个简单的推荐系统
2019/08/07 Python
python使用socket 先读取长度,在读取报文内容示例
2019/09/26 Python
python对验证码降噪的实现示例代码
2019/11/12 Python
Python的3种运行方式:命令行窗口、Python解释器、IDLE的实现
2020/10/10 Python
美国在线印刷公司:PsPrint
2017/10/12 全球购物
荷兰牛仔裤网上商店:Jeans Centre
2018/04/03 全球购物
三年级评语大全
2014/04/23 职场文书
网吧消防安全责任书
2014/07/29 职场文书
人大调研汇报材料
2014/08/14 职场文书
新农村建设汇报材料
2014/08/15 职场文书
法人代表身份证明书及授权委托书
2014/09/16 职场文书
对照检查剖析材料
2014/09/30 职场文书
2014年残联工作总结
2014/11/21 职场文书
维稳工作承诺书
2015/01/20 职场文书
Python编程源码报错解决方法总结经验分享
2021/10/05 Python
apache ftpserver搭建ftp服务器
2022/05/20 Servers