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 相关文章推荐
js中取得变量绝对值的方法
Jan 03 Javascript
JS中获取函数调用链所有参数的方法
May 07 Javascript
浅析JS原型继承与类的继承
Apr 07 Javascript
JQuery validate插件Remote用法大全
May 15 Javascript
js判断文件格式及大小的简单实例(必看)
Oct 11 Javascript
Vue.js实现表格动态增加删除的方法(附源码下载)
Jan 20 Javascript
AngularJS中ng-class用法实例分析
Jul 06 Javascript
vue中使用element-ui进行表单验证的实例代码
Jun 22 Javascript
RxJS的入门指引和初步应用
Jun 15 Javascript
基于纯JS实现多张图片的懒加载Lazy过程解析
Oct 14 Javascript
基于vue-cli3和element实现登陆页面
Nov 13 Javascript
Vue.js仿Select下拉框效果
Feb 18 Javascript
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
聊天室php&amp;mysql(六)
2006/10/09 PHP
thinkphp中ajax与php响应过程详解
2014/12/08 PHP
php中mysql连接方式PDO使用详解
2015/02/25 PHP
jquery+php实现导出datatables插件数据到excel的方法
2015/07/06 PHP
php正则提取html图片(img)src地址与任意属性的方法
2017/02/08 PHP
破除网页鼠标右键被禁用的绝招大全
2006/12/27 Javascript
JavaScript中的Screen屏幕对象
2008/01/16 Javascript
JS的数组的扩展实例代码
2008/07/09 Javascript
有关DOM元素与事件的3个谜题
2010/11/11 Javascript
jQuery find和children方法使用
2011/01/31 Javascript
jQuery setTimeout传递字符串参数报错的解决方法
2014/06/09 Javascript
node.js中的http.request.end方法使用说明
2014/12/10 Javascript
jQuery对象的length属性用法实例
2014/12/27 Javascript
jQuery和AngularJS的区别浅析
2015/01/29 Javascript
Bootstrap编写一个兼容主流浏览器的受众巨幕式风格页面
2016/07/01 Javascript
浅谈sass在vue注意的地方
2017/08/10 Javascript
详解vue 单页应用(spa)前端路由实现原理
2018/04/04 Javascript
Vue基础学习之项目整合及优化
2019/06/02 Javascript
Vue实现简单计算器案例
2020/02/25 Javascript
H5 js点击按钮复制文本到粘贴板
2020/11/19 Javascript
[02:48]DOTA2超级联赛专访海涛:你们的选择没有错
2013/06/07 DOTA
Python实现视频下载功能
2017/03/14 Python
Python常用时间操作总结【取得当前时间、时间函数、应用等】
2017/05/11 Python
python+matplotlib实现动态绘制图片实例代码(交互式绘图)
2018/01/20 Python
分享CSS3制作卡片式图片的方法
2016/07/08 HTML / CSS
欧洲最大的滑雪假期供应商之一:Sunweb Holidays
2018/01/06 全球购物
洲际酒店集团英国官网:IHG英国
2019/07/10 全球购物
Hotels.com日本:国外和海外住宿,酒店预订
2019/12/13 全球购物
新闻学专业个人求职信写作
2014/02/04 职场文书
大学生标准自荐书
2014/06/15 职场文书
学校安全工作汇报材料
2014/08/16 职场文书
2014年党员自我评议总结
2014/09/23 职场文书
解除施工合同协议书
2014/10/17 职场文书
小学教师见习总结
2015/06/23 职场文书
学习雷锋主题班会
2015/08/14 职场文书
Java 多线程协作作业之信号同步
2022/05/11 Java/Android