草庐IT

angularjs-ng-model

全部标签

javascript - 将 ng-include 用于原始(或编译)HTML 还是模板 URL?

假设我有一个模板,其中包含一个带有ng-include指令的元素:我正在尝试将我们所有的模板简化为我们构建的应用程序JS(使用browserify和brfs转换),从概念上讲,它看起来像:这最终会导致:listitem">除了在ng-include中使用模板URL之外,还有什么方法可以使用原始或编译后的HTML吗?如果没有,是否有另一种Angular替代方法可以让我完成这个,无论是作为某种包含还是部分,但能够包含原始/编译的HTML? 最佳答案 我自己花了几天时间,使用$templateCache找到了一个很好的解决方案。javas

javascript - AngularJS - 仅在 ng-change 上触发 $timeout 事件一次

我在绑定(bind)到范围变量的html输入字段上有一个ng-change。varchange=function(){redraw_graph()}现在,当我更改输入框时,它会为我输入的每个新字符重新绘制图形。我想要延迟(N秒),所以在ng-change事件触发之前,angular会等待用户完成输入。如果触发了多个ng-change事件,它会取消较早的事件,只执行最新的事件。我已将延迟与超时结合起来,但在N秒后,ng-change事件仍然触发不止一次。我以前解决过这个问题,但我目前不知道该怎么做。 最佳答案 对我来说,您所要求的似乎

javascript - 带有 ng-include 的 Angular JS ng-switch?

我有3个不同的代码片段,我想根据选择菜单中的选择进行交换。如果我包含内联代码,它会起作用,但是当我尝试像这样使用ng-includes时,我会收到Angular错误并且应用程序失败:我在这里做错了什么?ng-switch不能与ng-includes一起使用吗? 最佳答案 原因是指令ng-include和ng-switch-x都使用了嵌入,而您在同一个元素上指定了这两个指令,这是不允许的。将nginclude移动到ng-switch元素的子元素。这在angular1.x版本之前一直有效,但是从1.2.x版本的angular开始,复合嵌

javascript - AngularJS 指令观察父大小变化

问题我有一个简单的指令,可以对特定元素执行大小更新。这会监window口大小并相应地进行调整。MyApp.directive('resizeTest',['$window',function($window){return{restrict:'AC',link:function(scope,element){varw=angular.element($window);scope.$watch(function(){return{'h':w.height(),'w':w.width()};},function(newValue,oldValue){//resizinghappensher

javascript - 相当于 hasAttribute() 的 AngularJS?

在指令中,我想在对元素执行某些函数之前检查它是否具有属性。但我在jqLitedocs中没有看到为此做的任何事情.例如:.directive('noReadonly',function(){return{link:function($scope,$element,$attr,ctrl){$element.on('focus',function(){if($element.hasAttribute('readonly'))$element.removeAttr('readonly');});},}}) 最佳答案 $attr是一个具有属性

javascript - AngularJS Ng-重复和重复

我在SO中看到很少有问题讨论在ng-repeat中不允许重复。我的问题有点不同。就我而言,我很困惑,因为我即使数组中有重复的对象也没有收到错误这是我的HTML代码{{item.email}}下面是填充数组的代码app.controller('MainCtrl',function($scope){$scope.items=[];$scope.items.push({"id":"1","email":"a@b.com"});$scope.items.push({"id":"1","email":"a@b.com"});$scope.items.push({"id":"2","email":

javascript - 如何在 AngularJS 中管理 404 错误加载指令模板

在AngularJS指令中,templateUrl参数是动态定义的。'templates/'+content_id+'.html'我不想建立规则来检查content_id值是否有效并将其作为404错误进行管理,即如果模板不存在(加载模板时服务器返回404错误)改为加载template/404.html。我该怎么做?已编辑:当前答案建议使用响应错误拦截器。在这种情况下,我怎么知道响应是加载此模板? 最佳答案 您将需要编写响应错误拦截器。像这样:app.factory('template404Interceptor',function(

javascript - AngularJS - $location html5Mode 是如何工作的?

我问这个是因为现在有几次,我已经尝试使用$locationProvider.html5Mode(true)命令连同并在为我的项目调用脚本/样式/图像时遇到了很多错误。我想一定是我做错了什么,但是你是否应该遵循某种文件夹结构,这样你就不会遇到这些错误?或者是否有一种特定的方式来basehref我不太了解的作品?最近,我想在一个非常非常小的应用程序上尝试一下。它实际上是一个静态网站,但我想利用Angular的路由来确保所有页面都能立即加载。所以我的结构应该是这样的:my-projectcssimagesjsangularapp.jsapp.routes.jsmainCtrl.jsviews

javascript - 如何检查某些东西是否在 ng-class 的数组中

我想做这样的事情:varlist=[1,2,3,4,5]if(2inlist){returntrue}来自ng-class,所以我尝试了:ng-class="this.idinlist?'class-1':'class-2'">但是没有用,抛出错误SyntaxError:Token'in'isanunexpectedtokenat... 最佳答案 对于数组,您将使用indexOf,而不是用于对象的inif(list.indexOf(this.id)!==-1){...}所以ng-class="{'class-1':list.inde

javascript - AngularJS 指令链接功能不起作用

http://jsfiddle.net/kz26/kH9wg/我正在尝试使用AngularJS中的指令,并尝试了简写指令样式(仅返回链接函数)和普通样式(返回全部或部分指令定义对象)。不幸的是,我只能使用popup2中定义的速记方式使指令工作(激活jQuery弹出窗口)。普通的popup2指令似乎根本不起作用,特别是我的定义对象中的link函数从未被调用过。我需要做什么才能使此显式链接声明生效? 最佳答案 您的两个指令都进行了一些小的调整,以便在创建指令时重用相同的模块,而不是覆盖第一个指令。参见thisfiddle.而不是做:an