jjzjj

AngularJs

全部标签

javascript - AngularJS:使用超时属性取消 $http 请求

我看过很多关于这个主题的帖子和很多网络文章,但我仍然被我的问题难住了。我找到了thispost非常有用,但我的timeoutRequest()函数从未被调用。我正在使用超时属性为$http的promise,但基础HTTP请求未被取消。我认为promise本身正在解决,但请求并未取消。我的Controller行为如下所示:$scope.enquiriesSelected=function(){$scope.cancelHttpRequests();$location.path("/enquiries");};$scope.cancelHttpRequests=function(){con

javascript - AngularJS 中的字符串比较

我正在尝试比较AngularJS中的两个字符串,并且我在网上看到了示例。据我了解,你可以使用angular.equals(str1,str2),你可以使用===,你可以使用==,如果你确定两者都是字符串......我已经尝试了所有三个,但我没有得到结果。我所做的一定有问题,但我不知道是什么。当我运行代码时,会调用inc1()函数。第一个警报出现“inc1called”。但是第二个警报“Insideforloop”只执行一次。它应该执行两次,不是吗?并且if(condition)中的警报根本不执行。如果我删除“if”block,则“Insideforloop”警报会运行两次。如果有人能告

javascript - AngularJS:$parsers 与 $validators

在AngularJS中,$parsers和$validators都可以用来验证表单。我想知道使用$parser和使用$validator之间到底有什么区别。让我们看下面的例子:使用解析器验证angular.module("myFormApp").directive("containsWhiteSpace",containsWhiteSpace);functioncontainsWhiteSpace(){functionhasWhiteSpace(s){returns.indexOf('')>=0;}return{require:"ngModel",link:function(scope

javascript - AngularJS http 返回值

我想在AngularJS中编写一个返回值(实际上它是一个字符串)的函数。该值由http请求返回,但异步让我抓狂。我的第一次尝试是:this.readParameter=function(key){$http({method:"GET",url:"XXXXXXX",headers:{'Content-Type':'application/json'}}).then(functionsuccessCallback(response){returnresponse.data;},functionerrorCallback(response){thrownewError("Error");})

javascript - $routeProvider/$locationProvider 不是 AngularJS 路由中的函数

我正在尝试在AngularJS中创建所谓的“SEO友好”URL。在我用于路由的script.js中:app.config(['$routeProvider',function($routeProvider){$routeProvider.html5Mode(true);when('/blog',{templateUrl:'blog.html',controller:'BlogController'}).when('/page/ideas',{templateUrl:'ideas.html',controller:'IdeasController'}).otherwise({templa

javascript - 如何禁用 saveRow 事件 ui-grid

我正在使用ui-grid在UI中显示我的表格。我有一个要求,我不想让表自动保存数据。我希望用户编辑表格中的所有数据并单击一个按钮来更新所有编辑的数据。上述行为工作正常,但我遇到的唯一问题是每当用户连续编辑一个单元格时,几秒钟后,该单元格变为灰色且不可编辑。在浏览器cnsole上我收到此错误:引发saveRow事件时未返回promise,可能是没有人在监听事件,或者事件处理程序未返回promise由于上述JS错误,整行变得不可编辑。如何告诉ui-grid不要保存数据,除非我点击我的按钮。如果我处理saveRow事件,那么我的按钮不起作用。请在这方面帮助我。相关代码片段如下:vargrid

javascript - angular.copy 当数组有自定义属性时

考虑以下示例:varar=[4,2,3];ar.$x='something';varbr=angular.copy(ar);console.dir(br);br不再有$x属性,因为在复制数组时,angular使用for(;;;)进行迭代看不到自定义属性(如果它使用forin进行迭代,那么它将起作用)。我应该做什么?像类一样创建数组,然后分配属性;如果是bug,反馈给angular;更改我的代码,因为将属性分配给数组不是好的做法; 最佳答案 尝试angular.merge()这是一个包含可枚举属性的深拷贝。varar=[4,2,3];

javascript - 首先触发的去抖动函数然后对后续操作进行去抖动

到目前为止,我所见过的每个去抖动函数示例都会防止某个Action在指定的时间跨度内发生多次,然后在指定的时间跨度过去后执行该Action一次,然后重置计时器。例如,AngularMaterial中包含的$mdUtil.debounce函数。我正在寻找的是一个去抖动函数,它立即执行操作,然后阻止后续多个操作触发,直到计时器重置。这样做的好处是,用户不必等到去抖动时间过去后才采取行动,同时仍能实现去抖动Action的目标。有没有人见过或幸运地创造了一个?更新经过更多考虑,去抖动函数应该立即触发操作,然后,如果在去抖动时间跨度内再次调用去抖动函数,它应该触发在重置计时器之前第二次执行操作,以

javascript - Angular $watch 不工作

我在我的Controller上使用了两个$watches来观察这两个对象:$scope.gastos={name:"Gastosmensuales",data:[0,0,0,0,0,0,0,0,0,0,0,0],labels:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"]};$scope.ganancias={name:"Gananciasmensuales",data:[0,0,0,0,0,0,0,0,0

javascript - ng-repeat、for-loop 和 push

我快疯了。这个hello-worldesque示例有什么问题?我只是想用angularjs1.5.5测试一些基本的东西。HTML:test1:{{label}}test2:{{label}}JS:angular.module('myApp',[]).controller('Ctrl',['$scope',function($scope){$scope.test=function(amount){varresult=[];result.push("1");for(vari=0;iJsFiddle:http://jsfiddle.net/d3v6vq7w/7/简单地说,循环适用于1次迭代,