草庐IT

angularJS-karma-jasmine

全部标签

javascript - angularjs: ngModel controller $parser & $formatter 在元素被移除后仍然触发

在下面的示例中,我不明白为什么在删除元素后Angular仍在触发解析器和格式化程序。我应该在指令中手动清理ngModelController吗?如果是这样,我应该怎么做?要了解我在说什么,请查看plunker,然后打开控制台点击“删除”按钮点击“更改模型”按钮注意格式化程序仍在启动笨蛋:http://plnkr.co/edit/R7v5nB8JaQ91WcDGU8BC?p=previewJSangular.module('testMod',[]).controller('testCtrl',function($scope){$scope.test="test";$scope.remov

javascript - angularjs 中 $cookiestore 和 $cookies 的区别

angularjs中$cookiestore和$cookies有什么区别。我看到了angularjs文档。$cookiestore和$cookies做同样的事情,但唯一的区别是$cookiestore-canobjectsputorretrievedfromthisstorageareautomaticallyserializedordeserializedbyangular'stoJson/fromJson.but$cookies-can'tdothis只有一个区别吗?或者别的什么? 最佳答案 我认为文档中对每个的描述都非常清楚:

javascript - AngularJS 上传文件并将其发送到数据库

我一直在尝试获取ngFileUpload工作以便我可以上传图像并将它们发送到数据库——在我的例子中是mongoLab接受JSON对象的数据库,可以使用如下语法POSTed:$http.post('myMongoName/myDb/myCollection/myTable',{'key':'value'})相当简单。但是,我对如何将使用ngFileUpload上传的图像发送到数据库感到困惑。我正在使用ngFileUpload文档页面上介绍的熟悉语法:$scope.upload=function(files){if(files&&files.length){for(vari=0;i但是,在

javascript - 为什么我的 Jasmine 规范是 'No specs found'

我的Javascript函数是functionInvestment(params){varparams=params||{};this.stock=params.stock;this.shares=params.sharesthis.cost=params.cost};我的规范是describe("Investment",function(){beforeEach(function(){this.stock=newStock();this.investment=newInvestment({stock:this.stock,shares:100cost:2000});});it("sh

javascript - 使用 AngularJS html5Mode (back4app/Parse-Server) 时如何解析 ExpressJS 路由

我正在使用使用Parse-Server的back4appBaaS服务。对于客户端,我使用html5Mode(true);运行AngularJS;我的问题是这不起作用:http://app.rizop.tv/dashboard虽然这是正确的:http://app.rizop.tv知道如何修复expressJS以正确的方式处理我的路由吗?我有这个配置:云\app.js//Helpermodulesthatwillbeusedvarpath=require('path');varbodyParser=require('body-parser')//ThisimportstheRouterth

javascript - karma 测试 : measure coverage for untested code

我已经成功地为我的sandboxprojectwritteninTypescript设置了Karma和Webpack测试。.代码覆盖率指标由IstanbulInstrumenterLoader收集。令我困扰的是Igetthecoveragereportedonlyforthemodulesthatarebeingimportedinthetests,因此报告的100%覆盖率实际上是一个肮脏的谎言。寻找解决方案,我在IstanbulInstrumenterLoader的readme中找到了一段话:Tocreateacodecoveragereportforallcomponents(ev

javascript - AngularJS 哲学 - Controller 作为 "windows"到服务

抱歉标题模糊;我一直在重构我的一些AngularJS代码,试图让它更“有Angular”,我注意到这种模式经常出现:app.service("someService",function(...){...}app.controller("ControllerForThisSection",function($scope,someService){$scope.someService=someService}基本上,Controller的主要作用是为范围提供对服务的引用,以便View可以使用它,例如....所以我有多个Controller,它们只依赖于某些共享数据或服务,并用于引用通过范围

javascript - 如何监视 Jasmine 中的自定义事件?

我定义了一个自定义事件。我想用Jasmine来窥探它。但我遇到的问题是,当我使用spyOn监视该事件时,它失败了。当我监视某些功能时,它工作正常。这是我尝试过的:describe("Test:",function(){it("Expectseventwillbespied:",function(){vareventSpy=spyOn(window,'myEvent').andCallThrough();expect(eventSpy).toHaveBeenCalled();//Alsotriedthis://expect(eventSpy).not.toHaveBeenCalled()

javascript - 如何在运行测试之前让 Karma 的自动监视功能暂停?

我认为Vim保存文件和Karma重新运行我的Jasmine单元测试之间存在竞争条件。以下是演示症状的四个测试运行序列(我chop了错误日志中的极长路径):$karmastartkarma.conf.js--auto-watch[...snipalotofcodingandtestrunning...]PhantomJS1.6(Linux)LOG:'Runningtestsat2013-08-14T08:19:57.252Z'PhantomJS1.6(Linux):Executed4of4SUCCESS(0.307secs/0.013secs)PhantomJS1.6(Linux)LOG

javascript - 嵌套指令 - 无法将参数从 Angularjs 中的子指令传递给 Controller ​​方法

我在使用angularjs中的嵌套指令时遇到了一些问题。我想从另一个指令中的指令调用Controller方法,并试图将参数传递给它,但它们是未定义的。我正在尝试使用下面selected.html中的三个参数调用remove()。在我引入父指令(televisionFilter.js)之前,它一直在工作。任何人都可以建议如何将它们传递给Controller​​吗?谢谢!代码:Controller.js$scope.remove=function(selectorToRemove,choicesArr,selectedArr){console.log(selectorToRemove);/