AngularJS自定义指令之复制指令实现方法


Posted in Javascript onMay 18, 2017

本文实例讲述了AngularJS自定义指令之复制指令实现方法。分享给大家供大家参考,具体如下:

<!DOCTYPE html>
<html>
  <head>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="bootstrap.min.css" rel="external nofollow" >
    <script src="jquery.min.js"></script>
    <script src="angular.js"></script>
    <script src="bootstrap.min.js"></script>
    <script type="text/javascript">
      var app = angular.module('myapp', []);
      app.directive('duplicate', function($rootScope){
       return {
        transclude: 'element',
        replace: true,
        priority: 2,
        link: function(scope, elem, attrs, ctrl, transclude) {
         var times = parseInt(attrs.duplicate);
         var previous = elem;
         var childScope;
         for(var i = 0; i < times; i++) {
          childScope = scope.$new();//新建scope的子scope
          childScope.number = i;
          transclude(childScope, function(clone){//transclude将每个childScope与clone关联, 一一对应(一对对)
            // console.log(childScope.$id);
            // console.log(clone.scope().$id)
            previous.after(clone);//在previous与clone拼接再赋值给clone
            previous = clone;
          });
         }
          console.log(scope.childHead.number);//可以看到5个全是scope的子scopeconsole.log(scope.childTail.number);
          console.log(scope == $rootScope)//可以看到此时指令scope就是$rootScope 因为scope:false
        },
       }
      });
    </script>
  </head>
  <body ng-app="myapp">
    <input type='text' ng-model='number' duplicate="5" />
    <br/>
    <!--与上面绑定 -->
    <input type="text" ng-model="childHead.number"/><br/><inputtype="text"ng−model="childTail.number" />
  </body>
</html>

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

Javascript 相关文章推荐
使用JavaScript switch case 另类写法
Mar 14 Javascript
jQuery 核心函数以及jQuery对象
Mar 23 Javascript
JavaScript 参数中的数组展开 [译]
Sep 21 Javascript
网站接入QQ登录的两种方法
Jul 22 Javascript
原生JS实现首页进度加载动画
Sep 14 Javascript
AngularJS实现根据不同条件显示不同控件
Apr 20 Javascript
强大的 Angular 表单验证功能详细介绍
May 23 Javascript
AngularJS实现进度条功能示例
Jul 05 Javascript
jquery 给动态生成的标签绑定事件的几种方法总结
Feb 24 jQuery
vue中动态设置meta标签和title标签的方法
Jul 11 Javascript
vue 动态组件用法示例小结
Mar 06 Javascript
vue动态设置路由权限的主要思路
Jan 13 Vue.js
AngularJS使用ng-class动态增减class样式的方法示例
May 18 #Javascript
Vue中img的src属性绑定与static文件夹实例
May 18 #Javascript
JS验证全角与半角及相互转化的介绍
May 18 #Javascript
Vue-cli proxyTable 解决开发环境的跨域问题详解
May 18 #Javascript
Javascript实现倒计时时差效果
May 18 #Javascript
vue-cli webpack 开发环境跨域详解
May 18 #Javascript
JavaScript实现简单的星星评分效果
May 18 #Javascript
You might like
ThinkPHP调用common/common.php函数提示错误function undefined的解决方法
2014/08/25 PHP
javascript call方法使用说明
2010/01/11 Javascript
对xmlHttp对象方法和属性的理解
2011/01/17 Javascript
枚举的实现求得1-1000所有出现1的数字并计算出现1的个数
2013/09/10 Javascript
对jquery的ajax进行二次封装以及ajax缓存代理组件:AjaxCache详解
2016/04/11 Javascript
使用jQuery UI库开发Web界面的简单入门指引
2016/04/22 Javascript
限时抢购-倒计时的完整实例(分享)
2017/09/17 Javascript
JS Testing Properties 判断属性是否在对象里的方法
2017/10/01 Javascript
angular4中引入echarts的方法示例
2019/01/29 Javascript
vue的列表交错过渡实现代码示例
2019/05/05 Javascript
js如何获取访问IP、地区、当前操作浏览器
2019/07/23 Javascript
layui 上传插件 带预览 非自动上传功能的实例(非常实用)
2019/09/23 Javascript
vue2.x 通过后端接口代理,获取qq音乐api的数据示例
2019/10/30 Javascript
vue video和vue-video-player实现视频铺满教程
2020/10/30 Javascript
[01:32:50]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第一场 1月25日
2021/03/11 DOTA
Python3 入门教程 简单但比较不错
2009/11/29 Python
python实现的登陆Discuz!论坛通用代码分享
2014/07/11 Python
Python创建xml的方法
2015/03/10 Python
Python的Django框架中设置日期和字段可选的方法
2015/07/17 Python
Python基础中所出现的异常报错总结
2016/11/19 Python
Python中的id()函数指的什么
2017/10/17 Python
OpenCV-Python实现轮廓检测实例分析
2018/01/05 Python
Python实现读取机器硬件信息的方法示例
2018/06/09 Python
Python类装饰器实现方法详解
2018/12/21 Python
python 利用turtle库绘制笑脸和哭脸的例子
2019/11/23 Python
python类中super() 的使用解析
2019/12/19 Python
关于pytorch中全连接神经网络搭建两种模式详解
2020/01/14 Python
Python colormap库的安装和使用详情
2020/10/06 Python
Sneaker Studio法国:购买运动鞋
2018/06/08 全球购物
偷看我的初中毕业鉴定
2014/01/29 职场文书
关于梦想的演讲稿
2014/05/05 职场文书
2014年群众路线教育实践活动整改措施
2014/09/24 职场文书
董事长岗位职责
2015/02/13 职场文书
烈士陵园扫墓感想
2015/08/07 职场文书
mongodb清除连接和日志的正确方法分享
2021/09/15 MongoDB
Python批量解压&压缩文件夹的示例代码
2022/04/04 Python