Tag: angularjs

AngularJS:如何清除URL中的查询参数?

我的AngularJS应用程序需要访问用户的LinkedIn个人资料。 为了做到这一点,我需要将用户redirect到LinkedIn URL,其中包含一个callbackredirect_uri参数,该参数会告诉LinkedIn将用户redirect到我的Web应用程序,并在URL中包含“代码”查询参数。 这是一个传统的Oauth 2.0stream程。 除了LinkedIn将用户redirect到以下URL之外,一切都很好: http://localhost:8080/?code=XXX&state=YYY#/users/123/providers/LinkedIn/social-sites 我想从URL中删除?code=XXX&state=YYY ,以使其变得干净。 用户不需要看到我从LinkedInredirect收到的查询参数。 我尝试$location.absUrl($location.path() + $location.hash()).replace() ,但它保留在URL中的查询参数。 我也无法使用($location.search()).code提取查询参数,例如“code”。 好像有? 在上面的URL中#之前欺骗Angular。

AngularJS ng-if有多个条件

我想知道是否有可能有这样的事情: div ng-repeat="(k,v) in items" <div ng-if="k == 'a' or k == 'b'"> <!– SOME CONTENT –> </div> 知道项目是通过请求接收的JSON容器,所以这就是为什么我使用的是一个关键的价值方法。 谢谢 我在问,因为我尝试了使用Googlesearch,但我能得到的唯一结果是使用ng-switch,但是我必须使用ng-if。

如何configurationIIS的URL在HTML5模式下重写AngularJS应用程序?

我有AngularJS种子项目 ,我已经添加了 $locationProvider.html5Mode(true).hashPrefix('!'); 到app.js文件。 我想configurationIIS 7将所有请求路由到 http://localhost/app/index.html 所以这对我有用。 我该怎么做呢? 更新: 我刚刚发现,下载并安装了IIS URL重写模块 ,希望这会使我的目标变得简单明了。 更新2 : 我想这总结了我想要实现的(从AngularJS开发者文档中获取 ): 使用这种模式需要在服务器端进行URL重写,基本上你必须重写所有的链接到你的应用程序的入口点(例如index.html) 更新3: 我仍然在这个工作,我意识到我不需要redirect(有重写规则)的某些url,如 http://localhost/app/lib/angular/angular.js http://localhost/app/partials/partial1.html 所以在css,js,lib或partials目录中的任何东西都不会被redirect。 其他一切都需要redirect到app / index.html 任何人都知道如何轻松实现这一点,而不必为每个文件添加一个规则? 更新4: 我有2个入站规则在IIS URL重写模块中定义。 第一条规则是: 第二条规则是: 现在,当我导航到localhost / app / view1时,它会加载页面,但支持文件(css,js,lib和partials目录中的文件)也正在被重写到app / index.html页面 – 作为index.html页面,不pipe使用什么URL。 我想这意味着我的第一条规则,这应该是防止这些URL被第二条规则处理,不工作..任何想法? …任何人? …我感觉很孤单… :-(

AngularJS UI路由器 – 更改url,无需重新加载状态

目前我们的项目是使用默认的$routeProvider ,我使用这个“黑客”来更改url无需重新加载页面: services.service('$locationEx', ['$location', '$route', '$rootScope', function($location, $route, $rootScope) { $location.skipReload = function () { var lastRoute = $route.current; var un = $rootScope.$on('$locationChangeSuccess', function () { $route.current = lastRoute; un(); }); return $location; }; return $location; }]); 并在controller $locationEx.skipReload().path("/category/" + $scope.model.id).replace(); 我正在考虑用ui-routerreplacerouteProvider来嵌套路由,但不能在ui-routerfind它。 是否有可能 – 与angular-ui-router ? 为什么我需要这个? 我举个例子来解释一下: clicking保存后,创build新类别的路线是/category/new我显示success-alert ,我想改变路线/category/new到/caterogy/23 (23 – 是存储在db中的新项目的id)

在Angular中,我需要search数组中的对象

在Angular中,我的范围是一个返回大量对象的对象。 每个人都有一个ID(这是存储在一个平面文件,所以没有数据库,我似乎无法用户ng-resource ) 在我的控制器中: $scope.fish = [ {category:'freshwater', id:'1', name: 'trout', more:'false'}, {category:'freshwater', id:'2', name:'bass', more:'false'} ]; 在我看来,我有更多关于默认隐藏的鱼的更多信息,但是当我点击简单显示更多选项卡时,我想调用函数showdetails(fish.fish_id) 。 我的function看起来像这样: $scope.showdetails = function(fish_id) { var fish = $scope.fish.get({id: fish_id}); fish.more = true; } 现在看来更多的细节出现了。 然而,通过search文件后,我无法弄清楚如何searchfisharrays。 那么如何查询数组呢? 并在控制台中如何调用debugging器,以便我有$scope对象来玩?

$申请已经在进行中的错误

堆栈跟踪: Error: $apply already in progress at Error (<anonymous>) at beginPhase (file:///android_asset/www/built.min.js:7:22740) at Object.Scope.$apply (file:///android_asset/www/built.min.js:7:25967) at navigator.geolocation.getCurrentPosition.that (file:///android_asset/www/built.min.js:13:8670) at Object.geolocation.getCurrentPosition (file:///android_asset/www/plugins/org.apache.cordova.core.geolocation/www/geolocation.js:122:13) at Object.getCurrentPosition (file:///android_asset/www/built.min.js:13:8589) at Object.getCurrentPosition (file:///android_asset/www/built.min.js:13:8277) at Object.getCurrentCity (file:///android_asset/www/built.min.js:13:8941) at Object.$scope.locateDevice (file:///android_asset/www/built.min.js:13:10480) at file:///android_asset/www/built.min.js:7:12292:7 指这个代码http://pastebin.com/B9V6yvFu getCurrentPosition: cordovaReady(function (onSuccess, onError, options) { navigator.geolocation.getCurrentPosition(function () { var that = this, args = arguments; if (onSuccess) { […]

“=”是什么意思? 在angularJS指令隔离范围声明?

平等之后的问号是否有特殊意义? 即: scope: {foo: '=?'} 上面的意思是'不要提出错误,如果'富'不能解决?

使用AngularJS从ASP.NET Web API方法下载文件

在我的Angular JS项目中,我有一个<a>锚点标记,点击时它会向返回文件的WebAPI方法发出HTTP GET请求。 现在,一旦请求成功,我希望文件被下载到用户。 我怎么做? 锚标签: <a href="#" ng-click="getthefile()">Download img</a> AngularJS: $scope.getthefile = function () { $http({ method: 'GET', cache: false, url: $scope.appPath + 'CourseRegConfirm/getfile', headers: { 'Content-Type': 'application/json; charset=utf-8' } }).success(function (data, status) { console.log(data); // Displays text data if the file is a text file, binary if it's an image // What should […]

错误:参数不是一个函数,没有定义

使用AngularJS与Scala Play,我得到这个错误。 错误:参数'MainCtrl'不是一个函数,没有定义 我试图创build一个由一周的日子组成的表。 请看我的代码。 我已经检查了控制器的名称,但似乎是正确的。 注意:从这个SO 回答使用的代码 index.scala.html @(message: String) @main("inTime") { <!doctype html> <html lang="en" ng-app> <head> <link rel="stylesheet" media="screen" href="@routes.Assets.at("stylesheets/main.css")"> </head> <div ng-controller="MainCtrl"> <table border="1"> <tbody ng-repeat='(what,items) in data'> <tr ng-repeat='item in items'> <td ngm-if="$first" rowspan="{{items.length}}">{{what}}</td> <td>{{item}}</td> </tr> </tbody> </table> </div> </html> } MainCtrl.js (function() { angular.module('[myApp]', []).controller('MainCtrl', function($scope) { $scope.data = […]

在input焦点上select文本

我有一个文本input。 当input收到焦点时,我想selectinput内的文本。 用jQuery我会这样做: <input type="text" value="test" /> $("input[type=text]").click(function() { $(this).select(); // would select "test" in this example }); 我已经四处search,试图findAngular的方式,但是我发现的大多数例子都是处理一个指令,它正在观察一个变化的模态属性。 我假设我需要一个指令,正在观察接收焦点的input。 我该怎么做?