草庐IT

angularjs-routing

全部标签

javascript - 在 AngularJS View 中使用 jQuery 插件

我正在处理我的第一个AngularJS项目。到目前为止我很喜欢它,但我现在挂了电话。我的项目的结构使得我的index.html中有一个单独的ng-view,它根据当前路由填充了单独的HTML模板/部分。在其中一个部分中,我想使用jQueryDateFormatplugin使用Angular表达式格式化解析为模板/部分的SQLite日期时间字符串:{{find.addDate}}我在index.html中包含了带有脚本标签的插件,我认为从那里它会像在我的模板/部分中做这样的事情一样简单:{{$.format.date(find.addDate,"dd/MM/yyyy")}}或者也许:{{

javascript - 用于分页的 AngularJS 中的限制和偏移数据结果

AngularJS在调用支持它们的外部数据资源时是否有Limit和Offset请求方法?我想有比这更优雅的解决方案,我通过routeParams传递限制和偏移量:functionListCtrl($scope,$http,$routeParams){$http.jsonp('http://www.example.com/api/list.jsonp?callback=JSON_CALLBACK&limit='+$routeParams.limit+'&offset='+$routeParams.offset,{callback:'JSON_CALLBACK'}).success(fun

javascript - 单元测试 AngularJS 模块 Controller

我正在查看TODOMVCAngularJS示例,我看到该应用程序被定义为一个模块。vartodomvc=angular.module('todomvc',[]);在Controller内部,我看到它们被定义为:todomvc.controller('TodoCtrl',functionTodoCtrl($scope,$location,todoStorage,filterFilter){//...});我的问题涉及单元测试...如何为该类编写单元测试?我试过这样的事情:describe('TodoCtrl',function(){varcontroller;beforeEach(fun

javascript - AngularJS - 防止未经身份验证的用户访问给定的路由

在我的应用程序中,当用户登录时,我有authService设置内部标志isAuthenticated。现在,在每次路由更改时,我都会将监听器附加到$routeChangeStart事件,该事件会检查authService.isAuthenticated()。如果不是,它应该重定向到登录路由。问题是当用户刷新页面时(所有authService设置都丢失了)并且它再次返回登录(同时在服务器上仍然有有效session)。这不是我想要的。我想做的是“阻止”路由更改,直到我获得用户已通过身份验证的信息(来自authService,这将是即时的,或者如果没有可用信息,则来自服务器在authServ

javascript - 使用 AngularJS 在滚动条上隐藏一个 div

我是AngularJS的新手。当用户在div“B”上滚动时,我想在AngularJS中隐藏div“A”。目前,当用户使用ng-click单击div“B”时,我可以隐藏div“A”,但我找不到任何方法来使用AngularJS滚动。我知道,我可以使用JQuery来隐藏div,但是有什么方法可以使用AngularJS来实现吗?更新:我创建了一个滚动指令并附加了$window。现在,如果我滚动整个窗口,div将被隐藏,但我想在滚动特定的div时隐藏它。我当前的实现如下所示:app.directive("scroll",function($window){returnfunction(scope

javascript - 覆盖 $location pushState 历史 AngularJS

如果我是“结果页面”的返回用户,我想查看我使用的最后一个过滤器。所以我使用ngCookies来更新页面上最后使用的搜索参数。controller('Results',['$location','$cookies',function($location,$cookies){$location.search(angular.fromJson($cookies.search));}]);//willyield:/results?param1=dude¶m2=bro但是,如果我点击“返回”,我将不会被带到我期望的最后一页。那是因为另一个状态被插入了历史但用户没有察觉到。用户登陆/res

javascript - AngularJS - 从代码重定向到另一个域

我设置了一个plunker来描述我的问题:Plnkr实际上我想导航到另一个域中的另一个页面(向按钮单击添加一个处理程序)。但它不起作用。提前致谢。更新window.location.href="http://google.com";正在工作,但AngularJS默认的$location.absUrl服务不工作。 最佳答案 $location服务不允许重新加载页面。TheAngularwaytoperformaredirectiontoanotherdomainistousethe$windowservice:$window.loca

javascript - AngularJS 从文件夹加载 Controller

我是AngularJS的新手,对如何从结构化文件夹加载Controller和其他js有疑问?例如我有结构:app/-common-users--userController.js--userService.js-orders-app.js我应该如何从文件夹用户加载Controller和服务?还有一个小问题:方形护腕是什么意思?app.config(['someThing'],function($routeProvider) 最佳答案 您可以将代码放在您想要的位置。如果将它们放入Angular模块中,Angular会找到它。所以如果你

javascript - 单击 "Apply"按钮后应用 angularjs 过滤器

我有一个很大的数据列表(4000多个项目)。开始输入时-我的浏览器卡住(最多15秒)。所以我需要关闭自动过滤功能,并将过滤功能绑定(bind)到按钮点击。通过谷歌寻找答案没有结果。我该怎么做?请帮助我:)代码:和Controller:app.controller("smsCtrl",['$scope','smsData','createDialog','$http','$filter',function($scope,smsData,createDialog,$http,$filter){...} 最佳答案 我在帮助一位同事时遇到了

javascript - 在angularJS中使用工厂方法时未定义不是函数错误

我在寻找代码中TypeError:undefinedisnotafunction的解决方案时遇到问题。我有以下app.js:varapp=angular.module('test',['ngRoute','test.services','test.directives','test.controllers']);app.config(function($routeProvider,$httpProvider,$locationProvider){$locationProvider.html5Mode(true);$routeProvider.when('/q/:q',{template