AngularJS自定义指令之复制指令实现方法
程序员文章站
2022-03-20 15:01:52
本文实例讲述了angularjs自定义指令之复制指令实现方法。分享给大家供大家参考,具体如下:
本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《angularjs指令操作技巧总结》、《angularjs入门与进阶教程》及《angularjs mvc架构总结》
希望本文所述对大家angularjs程序设计有所帮助。
推荐阅读
-
vue.js通过自定义指令实现数据拉取更新的实现方法
-
AngularJs1.x自定义指令独立作用域的函数传入参数方法
-
AngularJs中 ng-repeat指令中实现含有自定义指令的动态html的方法
-
在 Angular2 中实现自定义校验指令(确认密码)的方法
-
Angularjs使用directive自定义指令实现attribute继承的方法详解
-
Vue自定义指令实现checkbox全选功能的方法
-
vue自定义指令实现方法详解
-
AngularJS使用带属性值的ng-app指令实现自定义模块自动加载的方法
-
AngularJS框架的ng-app指令与自动加载实现方法分析
-
AngularJS使用自定义指令替代ng-repeat的方法