草庐IT

指令集与架构

全部标签

javascript - AngularJS Google Map 指令 map 实例

我正在使用http://angular-google-maps.org/这是一个很好的Angular谷歌地图库。但是我想使用像这样的东西不在angularjs上下文中加载的map实例:$scope.map={events:{tilesloaded:function(map){$scope.$apply(function(){$scope.mapInstance=map;});}}}好的,很好,我有mapInstance,我可以以编程方式使用它。但是在应用程序生命周期中,这会延迟-所以换句话说,我想在其他代码之前加载整个指令(并获取map实例)-我只是不想使用其他map事件。

javascript - 在 AngularJS 指令中实现继承

我正在尝试在AngularJS指令中实现OOP继承以制作可重用的控件。我正在使用Base2'sClassdefinition为继承。我在想的是实现这样的指令然后我会为常用功能创建一个BaseControl类angular.module('base',[]).factory('BaseControl',function(){returnBase.extend({'restrict':'E','require':'^parentForm'/*...*/};});然后我会创建特定的控件angular.module('controls',['base']).factory('TextContr

javascript - ng-view 和 ng-animate 一起执行指令两次

当我使用angularjs1.1.4的ng-view和ng-animate时,我注意到指令被执行了两次。一次用于View中进入屏幕的元素,一次用于View中离开屏幕的元素(当View进入屏幕时已经为元素执行了指令)。根据我的理解,指令应该只对进入屏幕的元素执行,而不是对离开的元素执行。还是我错过了什么?foobar{{count}}varapp=angular.module('app',[]);app.config(function($routeProvider,$locationProvider){$routeProvider.when('/',{template:'foo'}).w

javascript - AngularJS 父指令与子指令通信

考虑两个具有独立作用域的嵌套指令:如果我想要dctv2与dctv1交谈我有可能的选择:我可能需要dctv1的Controller在dctv2的定义中使用require:'^dctv1'我可以使用包装器调用父作用域上的表达式和scope:{callParent:'&'}我也可以使用$scope.$emit在dctv2但随后所有父作用域都会听到该消息。现在我要dctv1与dctv2交谈.我能做到这一点的唯一方法是使用$scope.$broadcast,但是所有的child都会听到。在这里交谈是指调用函数或类似函数。不想设置watch阻塞摘要循环。我怎样才能制作dctv1通知dctv2以最好

javascript - JS 动画架构设计以获得最佳性能

GreenSockanimationengine的性能提升非常戏剧化。为了实现这些yield,该图书馆做出了哪些潜在的架构决策和权衡?特别是,这个引擎与jQueryanimate有什么不同?? 最佳答案 greensock的人们给出了很好的回答:全面使用高度优化的JavaScript(这需要很多诸如使用链表、局部变量、快速查找之类的东西表格、内联代码、按位运算符、利用原型(prototype)而不是为每个实例重新创建函数/变量等)设计平台的结构,使其非常适合很好地应对高压情况,最大限度地减少函数调用和确保事情对gc友好。在一次更新中

javascript - 从组件调用的 Angular 4 指令的多个实例弄乱了输入值

我有一个Angular为4的组件,它被调用了三次。在模板元数据中,我有一个带有指令的div,其中包含一些像这样的绑定(bind)。@import{gServ}from'../gServ.service';@Component:({selector:'sr-comp',template:``})exportclassSGComponentimplementsOnInit{@Input('report')publicreport:IReportInstance;cOptions:any;constructor(privategServ:gServ){}ngOnInit(){this.cOp

javascript - 将新对象添加到集合时更新 Angular TreeView 指令

我有一个treeview指令归功于http://codepen.io/bachly/pen/KwWrzG作为我的起点。当我将对象添加到集合中时,我正在尝试更新。我可以更新对象并插入新对象,但是一旦更新了$scoped项目,就永远不会调用treeview指令。最终,使用的数据将来自服务,此时我只是使用模拟数据进行测试。原始集合是这样的$scope.myList={children:[{name:"Event",children:[{name:"EventDate",parent:"Event",children:[{name:"2008",filterType:'_eventStartD

javascript - 如何在指令上测试 Angular $destroy 事件?

指令(隔离作用域、嵌入、替换)将掩码插入到中.varmask=angular.element('');$document.find('body').append(mask);scope.$on('$destroy',function(){mask.remove();});我正在尝试通过范围内的简单广播来测试这种情况:var$document,scope,element,rootScope;beforeEach(inject(function($compile,_$document_,$rootScope,$injector){rootScope=$injector.get('$root

javascript - angularJS:在指令加载之前等待模板被评估

情况假设我有一个指令,它必须通过ID访问定义指令的元素内的某些元素。可能发生的问题是,在评估指令时,子元素还没有。结果是,我无法通过ID访问这些元素。示例FIDDLE{{item.name}}varmyApp=angular.module('myApp',[]);myApp.directive("color",function(){return{restrict:"A",link:function(scope,element,attributes){varname=attributes.color,el=element[0];scope.$watch(name,function(){v

javascript - AngularJS - 是否可以更改链接或编译指令中 ngModel 属性的值?

我正在尝试创建一个指令,该指令将根据属性值将ngModel属性添加到标签。例如:angular.module('myModule').directive('myDirective',function(){return{link:function(scope,elem,attrs){varmodelName='myPrefix.'+attrs.name;attrs.$set('ngModel',modelName);}};});所以这个html:编译成它采用输入的名称,附加前缀,并将ngModel属性设置为该值。当我尝试在链接函数中执行此操作时,input似乎未在formControll