草庐IT

angularJS-karma-jasmine

全部标签

javascript - Jasmine 不会从 Assets 管道加载 javascript 文件

我正在开发一个gem,我已经安装了Jasminehttps://github.com/pivotal/jasmine-gem/我所有需要的JS文件都在我的list文件中,位于app/assets/javascripts/application.js//=requireunderscore//=requirebackbone//=require_tree.//vendor//=require_tree.//custom//=require_tree.//templates//=require_tree.//models//=require_tree.//collections//=req

javascript - AngularJS $watch Controller 初始化期间的奇怪行为

我有一个代码片段:varapp=angular.module('Demo',[]);app.controller('DemoCtrl',function($scope){functionnotify(newValue,oldValue){console.log('%s=>%s',oldValue,newValue);}$scope.$watch('collection.length',notify);$scope.$watch('my',notify);$scope.collection=[];$scope.my='hello';});$watch最初触发。此代码片段将输出:0=>0h

javascript - 如何重新加载 AngularJS 部分模板?

在我的应用中,主模板有一个月份下拉列表(Jan、Feb...)。主模板包含一个ng-view,使用routeProvider加载部分模板。如何从主模板的Controller刷新ng-view(通过重新运行其Controller)?当用户切换到不同的月份时,部分模板内容会刷新。主模板HTML:....路线提供者:.....config(['$routeProvider',function($route){$route.when('/module/:module',{templateUrl:'partial/module.html',controller:Module}).otherwis

javascript - 如何使用具有工作 ng-click 功能的 angularjs 添加 html 按钮

我正在开发一款使用angularjs制作的游戏。我有一个问题,我还没有能够解决。我想使用一个弹出对话框(无警报),其内容取决于上下文。此弹出窗口包含一个按钮,单击该按钮即可开始游戏。由于内容是动态的,所以ng-click功能不起作用。我已经尝试使用指令并直接从Controller发出,但没有让它工作。我的具体问题是如何将HTML按钮添加到包含实际触发的ng-click函数的angularjs中?编辑:这是一次尝试(实际上是让按钮显示,但ng-click什么都不做):Controller:{if($scope.quiz.state==='finished'||$scope.quiz.st

javascript - AngularJS + Grunt + Protractor : keepAlive and watch

我目前正在使用E2E测试我的AngularJS应用程序和Grunt中的Protractor。我按照https://www.npmjs.org/package/grunt-protractor-runner安装,我有2个问题:首先:我想知道,如果有可能,我使用Karma进行的单元测试会产生这种行为:启动测试服务器运行所有测试当测试文件或任何其他html/js文件更改时,重新运行所有测试我非常喜欢这种实时监视和自动重新加载的方式,因为它减少了整个套件的启动时间,并使一切变得更快。但是对于Protractor,我有一个问题:每次我用Grunt开始测试时,测试都会执行,然后一切都会关闭。虽然,

javascript - Angularjs 对记录中某个字段的数据进行分组

是否有类似angular的groupby可以转换在group_header下分组的这种json数据。外部列表按组对数据进行排序,然后是该组的内部列表数据项,如果可以对这些数据进行分组,我无法理解这一点?vardata=[{"id":23,"name":"FunRun(Pre-RegistrationRequired)","date":"WednesdayNov12","group_header":"Sessionsfrom7:00amto1:45pm"},{"id":24,"name":"Breakfast","date":"WednesdayNov12","group_header"

javascript - 使用angularjs创建对象列表

我有一个字符串数组,我用这段代码来添加一个新项目$scope.list.push(name);但我不想只添加名称,我想做类似的事情$scope.list.push(data);//datacontainnameandage如何创建数据对象? 最佳答案 随便写vardata={name:"sampleName",age:18};$scope.list.push(data); 关于javascript-使用angularjs创建对象列表,我们在StackOverflow上找到一个类似的问题:

javascript - AngularJs 和 Angular-UI-Router 路由权限

我面临着如何根据从服务器获取的远程数据实现路由限制的问题。假设我有以下配置文件:angular.module('myApp').config(['$stateProvider',function($stateProvider){$stateProvider.state('post',{url:'/post/:post_id',abstract:true,[...]}).state('post.view',{url:'/view'[...]}).state('post.edit',{url:'/edit'[...]})}]);我的申请要求是:一个帖子有一个所有者(帖子的创建者),它的域可

javascript - 找不到 Karma + Jasmine + TypeScript + Webpack 的源映射

我正在尝试使用Karma、Jasmine和Webpack测试(覆盖)我的TypeScript应用程序。通过以下,我能够成功运行测试,但无法正确生成覆盖率。我正在使用karma-remap-coverage(https://github.com/sshev/karma-remap-coverage),它看起来很简单。它看起来好像发生了一些有趣的事情(而且我得到了某种覆盖率报告)但是在这里和那里进行了一些调整,数字发生了巨大变化,我永远无法真正加载源map。这是基本设置:我有一个src目录,其中包含10个.ts文件。目前只有一个有相应的.spec文件。spec文件非常简单,足以证明我可以运

javascript - AngularJs 位置路径更改而无需所有 Controller 重置

我的问题的简短版本是:如何更改URL而无需触发路由更改或无需运行当前显示页面上的所有Controller?详细信息:我有一个模板显示在中具有由3个Controller管理的区域。在页面的最顶部,我有一个交互式map。当您单击区域时,它会广播一次单击,其他组件会接收到它并显示有关该区域的数据。设置非常简单。我想做的是允许我的用户深层链接到内容。因此,每次有人点击链接时,我都想更改可以复制并粘贴到另一个浏览器的URL。其他一些用户只需单击该链接,就会看到与第一个用户看到的相同的状态。目前我使用与此类似的代码更改位置:$scope.$on('mapRegionClick',function(