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 添加和移除函数的通用方法
Oct 20 Javascript
javascript 限制输入脚本大全
Nov 03 Javascript
js中格式化日期时间型数据函数代码
Nov 08 Javascript
jQuery Jcrop插件实现图片选取功能
Nov 23 Javascript
Javascript在IE和FireFox中的不同表现简析
Dec 03 Javascript
JavaScript之Object类型介绍
Apr 01 Javascript
Bootstrap风格的WPF样式
Dec 07 Javascript
Angularjs中ng-repeat-start与ng-repeat-end的用法实例介绍
Dec 31 Javascript
微信小程序学习(4)-系统配置app.json详解
Jan 12 Javascript
Javascript中的getter和setter初识
Aug 17 Javascript
15分钟学会vue项目改造成SSR(小白教程)
Dec 17 Javascript
vuex存取值和映射函数使用说明
Jul 24 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验证码生成原理和实现
2016/01/24 PHP
Laravel程序架构设计思路之使用动作类
2018/06/07 PHP
php apache开启跨域模式过程详解
2019/07/08 PHP
基于jQuery的message插件实现右下角弹出消息框
2011/01/11 Javascript
UI Events 用户界面事件
2012/06/27 Javascript
使用jquery读取html5 localstorage的值的方法
2013/01/04 Javascript
js 鼠标移动显示图片的简单实例
2013/12/25 Javascript
jQuery选择器源码解读(六):Sizzle选择器匹配逻辑分析
2015/03/31 Javascript
JavaScript中停止执行setInterval和setTimeout事件的方法
2015/05/14 Javascript
第六章之辅组类与响应式工具
2016/04/25 Javascript
浅谈JavaScript中的分支结构
2016/07/01 Javascript
ion content 滚动到底部会遮住一部分视图的快速解决方法
2016/09/06 Javascript
JS实现禁止鼠标右键的功能
2016/10/15 Javascript
js实现用户输入的小写字母自动转大写字母的方法
2017/01/21 Javascript
微信小程序 向左滑动删除功能的实现
2017/03/10 Javascript
基于JavaScript实现验证码功能
2017/04/01 Javascript
利用Vue实现移动端图片轮播组件的方法实例
2017/08/23 Javascript
vue组件表单数据回显验证及提交的实例代码
2018/08/30 Javascript
微信小程序picker组件关于objectArray数据类型的绑定方法
2019/03/13 Javascript
vue 实现websocket发送消息并实时接收消息
2019/12/09 Javascript
Vue通过配置WebSocket并实现群聊功能
2019/12/31 Javascript
js将日期格式转换为YYYY-MM-DD HH:MM:SS
2020/09/18 Javascript
Python基于scrapy采集数据时使用代理服务器的方法
2015/04/16 Python
python使用urllib2实现发送带cookie的请求
2015/04/28 Python
Python 类与元类的深度挖掘 I【经验】
2016/05/06 Python
Python实现读取Properties配置文件的方法
2018/03/29 Python
python matplotlib实现双Y轴的实例
2019/02/12 Python
python 如何利用argparse解析命令行参数
2020/09/11 Python
django跳转页面传参的实现
2020/09/17 Python
html5中valid、invalid、required的定义
2014/02/21 HTML / CSS
Famous Footwear加拿大:美国多品牌运动休闲鞋店
2018/12/05 全球购物
香港莎莎官网Sasa.com:亚洲著名国际化妆品商城
2019/11/10 全球购物
委托公证书范本
2014/04/03 职场文书
2014五年级班主任工作总结
2014/12/05 职场文书
《一面五星红旗》教学反思
2016/02/23 职场文书
vue3种table表格选项个数的控制方法
2022/04/14 Vue.js