草庐IT

watch_dogs

全部标签

javascript - angular js 在 watch 语句中恢复范围属性的更改

我有一个选择框,当它发生变化时会触发一个httpPUT。html:js:$scope.$watch('color',function(newValue,oldValue){$http.put('...',{color:newValue})});问题是,如果http请求因任何原因失败,我希望选择框恢复到它以前的值。$scope.$watch('color',function(newValue,oldValue){req=$http.put('...',{color:newValue})req.error(function(){$scope.color=oldValue//willprob

javascript - $scope.$watch in Angular 在 Ionic/Cordova 中不起作用

我正在使用IonicFramework构建应用程序我现在想为此创建一些开关(基本上是花哨的复选框)。当有人按下开关时,我想将其发送到服务器,因此我首先trycatch开关更改事件。在基本的Angular安装中,我在html()和$watch中使用一个简单的复选框进行了尝试。在我的Controller中像这样:$scope.$watch('theswitch',function(){console.log('theswitchchanged');if($scope.boel){console.log('theswitchisTRUE');}else{console.log('theswi

javascript - Angular : Watch Service for data changes?

我有一个定义如下的服务:appServices.service('SharedData',function(){vardata={};functionsetContacts(contacts){data.contacts=contacts;};functiongetContacts(){returndata.contacts;};return{setContacts:setContacts,getContacts:getContacts};});在另一个Controller中,我按如下方式访问数据:$scope.contacts=SharedData.getContacts();一切都

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 - Grunt Live-Reload 通过 Watch

我正在尝试配置grunt以在更改时实时加载js和less/css文件。虽然grunt确实正确地“监视”并执行分配的任务,但它不会实时重新加载文件。下面是我的配置,有人看到有什么问题吗?module.exports=function(grunt){grunt.initConfig({pkg:grunt.file.readJSON("package.json"),jshint:{files:["Gruntfile.js","src/javascripts/**/*.js"],options:{globals:{jQuery:true,console:true,module:true}}},

javascript - AngularJS 忽略监视对象中的键或覆盖 $watch 监听器

我正在深入观察绑定(bind)到多个控件的属性:$scope.$watch('config',function(){},true);配置本身包含各种参数:规模点汇总当前当特定控件和特定函数更改时,我想忽略对scale的更改。有没有办法在特定情况下忽略特定属性或覆盖监视?现在这就是我正在做的:dataChange现在仅在某些更改时触发,在这种情况下,当其他属性时,不是缩放正在改变。为了禁用特定缩放案例的dataChange,我只是将其分配给其余案例。我使用Switch而不是if/else只是因为它更具描述性并且更容易扩展以适用于更多情况。$scope.$watch('config',fu

javascript - 如何让 angularJS $watch 检测样式的变化?

我有一个包含所有样式控件的富文本框。当我在其中输入新文本时-它会保存。当我对内容(文本)以及颜色突出显示和粗体文本等样式进行任何更改时,它会保存更改的文本和样式。但是,当我只更改样式而不更改任何内容时-它不会保存这些样式更改。我正在使用$watch来比较新值和旧值。如何让它在样式更改时也能正常工作? 最佳答案 angular.module("app",[]).directive('spyStyle',[function(){return{link:function(scope,element,attrs){scope.$watch(

javascript - 为什么我的 $watch 只触发一次?

我正在分解一些小部件,$watch表达式完美地工作在一个文件中,但现在我将相关的Controller部分移动到一个新的Controller中,并将标记移动到一个新的html和$watch在初始化后恰好触发一次,但在编辑相关输入时不会触发。JS:app.controller('getRecipientWidgetController',['$scope',function($scope){console.log("controllerinitializing")vartestReceivingAddress=function(input){console.log("changedetec

javascript - 我可以避免 $scope.$watch 返回未定义的值吗?

当我通过$scope.$watch在Angular中观察一个范围变量时,它似乎只在第一次调用watch函数时是undefined。是否可以重写我的代码以避免对undefined进行不必要的检查?这是一个最小的例子:1)jsfiddle2)HTML:Entersometext:Youentered:{{text}}Length:{{textLength}}3)Javascript:angular.module('MyApp',[]).controller('MyCtrl',function($scope){$scope.textLength=0;$scope.$watch('text',

javascript - Angular $watch |从函数返回项目

我很想知道为什么我总是要这样做$scope.$watch(function(){return$scope.someData;},function(value){console.log(value);});对于实际观察数据的Angular,为什么我必须这样做,这是真正困扰我的事情之一,因为它看起来毫无意义。如果我这样做$scope.$watch($scope.someData,function(value){console.log(value);});哪个更好,它从来没有用过?我也经常在工厂中使用它说$data是我要做的工厂$scope.$watch(function(){return$