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中返回顶部按钮的实现
May 05 Javascript
JavaScript中的this到底是什么(一)
Dec 09 Javascript
js判断iframe中元素是否存在的实现代码
Dec 24 Javascript
jQuery使用正则表达式替换dom元素标签用法示例
Jan 16 Javascript
原生js实现倒计时--2018
Feb 21 Javascript
JS创建Tag标签的方法详解
Jun 09 Javascript
jQuery Datatables表头不对齐的解决办法
Nov 27 jQuery
vue中mint-ui的使用方法
Apr 04 Javascript
jQuery实现鼠标移到某个对象时弹出显示层功能
Aug 23 jQuery
15 分钟掌握vue-next响应式原理
Oct 13 Javascript
Centos7 安装Node.js10以上版本的方法步骤
Oct 15 Javascript
JS不要再到处使用绝对等于运算符了
Apr 30 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 header下载函数
2014/01/31 PHP
PHP 配置后台登录以及模板引入
2017/01/24 PHP
laravel框架模型、视图与控制器简单操作示例
2019/10/10 PHP
JavaScript面向对象编程
2008/03/02 Javascript
浅析Cookie中的Path与domain
2013/12/18 Javascript
jquery处理json数据实例分析
2014/06/03 Javascript
JavaScript中匿名函数用法实例
2015/03/23 Javascript
详解JavaScript中的forEach()方法的使用
2015/06/08 Javascript
javascript判断图片是否加载完成的方法推荐
2016/05/13 Javascript
AngularJS  $on、$emit和$broadcast的使用
2016/09/05 Javascript
jq stop()和:is(:animated)的用法及区别(详解)
2017/02/12 Javascript
详解angular 中的自定义指令之详解API
2017/06/20 Javascript
Angular4实现图片上传预览路径不安全的问题解决
2017/12/25 Javascript
详解Nodejs内存治理
2018/05/13 NodeJs
Vue 页面权限控制和登陆验证功能的实例代码
2019/06/20 Javascript
微信小程序wx.getUserInfo授权获取用户信息(头像、昵称)的实现
2020/08/19 Javascript
[02:35]DOTA2英雄基础教程 末日使者
2013/12/04 DOTA
解析Python中的二进制位运算符
2015/05/13 Python
利用Python实现颜色色值转换的小工具
2016/10/27 Python
关于Python面向对象编程的知识点总结
2017/02/14 Python
Python初学时购物车程序练习实例(推荐)
2017/08/08 Python
python入门:这篇文章带你直接学会python
2018/09/14 Python
Django项目中实现使用qq第三方登录功能
2019/08/13 Python
python数据爬下来保存的位置
2020/02/17 Python
美国转售二手商品的电子商务平台:BLINQ
2018/12/13 全球购物
洛佩桑酒店官方网站:Lopesan Hotels
2019/04/15 全球购物
技术总监岗位职责
2013/12/05 职场文书
人事专员职责
2014/02/22 职场文书
环保建议书作文
2014/03/12 职场文书
青年志愿者活动方案
2014/08/17 职场文书
安全演讲稿开场白
2014/08/25 职场文书
房屋租赁合同补充协议
2014/10/11 职场文书
2014年小学校长工作总结
2014/12/08 职场文书
2015年学校消防安全工作总结
2015/10/14 职场文书
Pytorch 统计模型参数量的操作 param.numel()
2021/05/13 Python
详解nginx安装过程并代理下载服务器文件
2022/02/12 Servers