jjzjj

angular-promise

全部标签

javascript - 仅当 Angular 中存在图像时才显示图像元素

我有两个兄弟元素。一个是图像,另一个是div。如果图像存在,我想显示图像元素;如果图像不存在,我想显示div元素。我的元素看起来像{{product.img}}product.img的结果类似于/assets/images/prod.jpg。因为这是一个字符串,所以ng-show将始终为真,并且将显示图像标签。因此,如果图像不存在,它将显示为损坏的图像。所以基本上我想要的是,如果图像不存在,则隐藏图像标签并显示div,反之亦然。我试过像这样的javascript函数$scope.imageExists=function(src){varimage=newImage();image.sr

javascript - promise.all 在 forEach 循环中——所有东西同时触发

在Node应用程序中,我需要以同步方式遍历某些项目,但循环内的某些操作是异步的。我的代码现在看起来像这样:someAPIpromise().then((items)=>{items.forEach((item)=>{Promise.all[myPromiseA(item),myPromiseB(item)]).then(()=>{doSomethingSynchronouslyThatTakesAWhile();});}}当items是1的数组时,这会产生奇迹。但是,一旦有多个项目,promise.all()将立即触发每个数组中的项目,无需等待循环中的操作结束。综上所述...我如何确保

javascript - Angular 评估表达式就像它在 HTML 中一样

我正在寻找一个可以在Angular中执行类似操作的函数:vartestValues={name:'JohnDoe',number:15}somefunction('Hello,{{name}},youare{{number}}yearsold',testValues)//returns'Hello,JohnDoe,youare15yearsold'我知道$eval做类似的事情,但它里面不能有双括号。 最佳答案 您可能正在寻找$interpolate服务。文档中的示例:var$interpolate=...;//injectedvar

javascript - 为什么需要立即使用我的 ES6 Promise Rejection 以避免出现控制台错误消息?

请注意:以下是在不同浏览器中表现不同的问题。所以也许这是一个浏览器实现问题。无论如何,我都希望得到一些建议。在我的应用程序中,我创建了几个promise,我可能要等到future相当长一段时间才会使用这些promise。这应该没问题,毕竟它们是promise。如果存储的promise已解决,则没有问题。我可以在未来尽可能多地使用它,并且可以多次使用它。正如预期的那样。但是,如果被存储的promise被拒绝,就会出现问题。除非我在做出拒绝后不久(不确定多快)使用该拒绝,否则Chrome或Firefox中会弹出一条控制台消息,指示存在未捕获的promise拒绝/错误。IE不会弹出该错误。因

javascript - 我怎样才能让 `.then()` 保持足够长的时间以实现具有 native promise 的轮询功能?

总结:poll()带有回调的函数可用;我还没有发现任何使用nativepromise。我试图改编一些但没有成功。我还没有解决的问题是,当setTimeout调用的函数的第一个实例结束而没有任何返回时,.then()监听它会将终止视为false和一个reject().then()终止并且不监听以后的返回。问题:如何最好地帮助.then()函数坚持使用resolve()稍后返回或reject()?这篇文章的其余部分是细节。阅读有帮助的内容。可用的投票功能:我喜欢(https://stackoverflow.com/users/1249219/om-shankar)OmShankar在Cal

javascript - Angular 2 中的指令执行顺序

如果我有一个带有点击处理程序和自定义属性指令的简单按钮,如下所示:Save在我的属性指令中,我使用hoSTListener装饰器来监听点击事件:@Directive({selector:`[attributedirective]`})exportclassAuditPusher{@Input('attributedirective')attributedirective:string='Missingmessage!';@HostListener('click',['$event'])pushAudit(){console.log('text:'+this.attributedirec

javascript - 如何测试返回 Promise 的方法

我正在编写Angular2RC5应用程序,并使用Karma和Jasmine进行单元测试。我有一个返回Promise的方法(它位于对angular的http.post的调用之上)我想在完成后运行一些断言。这样的东西是行不通的letresult=myService.getFoo();result.then(rslt=>expect(1+1).toBe(3));//theerrorislost这会创建一个“UnhandledPromiserejection”警告,但错误会被抑制并且测试通过。如何根据已解决的promise运行断言?注意事项:.catch()方法似乎不是我想要的。我不想记录或做

javascript - 如何同步 Promise 对象?

我有需要同步工作的promise对象。例如,第二个promise不应该在第一个promise完成之前起作用。如果第一个拒绝第一个必须再次执行。我已经实现了一些示例。这个效果很好。调用getVal,等待2000ms,返回,i++,再次调用getVal.....getVal(){returnnewPromise(function(resolve,reject){setTimeout(function(){resolve(19)},2000);});}asyncpromiseController(){for(vari=0;i但我需要控制一组promise对象。我想做的是我有一个数据,我把它分

javascript - Angular 2 不适用于 MS Edge

当我在MSEdge中加载我的应用程序时遇到脚本错误。然而Firefox、Chrome、IE11都可以工作,除了Edge...这是控制台的屏幕截图:看这里:HTML1300:Navigationoccurred.localhost:23752SCRIPT65535:Argumentnotoptionalzone.js(556,13)SCRIPT257:Couldnotcompletetheoperationduetoerror80020101.localhost:23752(1,1)UnhandledPromiserejection:'Zone'isundefined;Zone:;Tas

javascript - 在 Angular 单元测试中模拟 ngResource

我有一个看起来像这样的ngResourceMockFactory:(function(){'usestrict';angular.module('app').factory('NgResourceMock',ngResourceMockFactory);ngResourceMockFactory.$inject=[];functionngResourceMockFactory(){functionNgResourceMock(){varcontext=this;context.$promise.then=function(){context.prototype.$promise.the