草庐IT

angularJs

全部标签

javascript - 成功登录后将用户数据从Nodejs服务器推送到Angular

我尝试使用PassportJS通过Facebook登录我的用户,并将用户数据传递给Angular。在服务器端,用户Controller中的Facebook回调代码看起来一切正常:exports.facebookCallback=function(){returnfunction(req,res,next){passport.authenticate('facebook',function(err,user,email){if(err||!user){returnres.redirect('/auth');}req.login(user,function(err){if(err){ret

javascript - 我如何在运行时 "disable"require.js?

我和我的团队有一个AngularJS应用程序,它不使用RequireJS,但在使用RequireJS的现有站点的上下文中加载。在构建过程中,我将所有脚本缩小/连接到一个JS文件中,其中包括某些vendor库,如Lodash、Moment等。运行与父应用程序隔离的网站很好,但在父应用程序的上下文中我得到了well-documentederror:UncaughtError:Mismatchedanonymousdefine()module:function(){return_;}我无法控制父应用程序,是否有办法在运行时“禁用”RequireJS或将其配置为忽略我的脚本?我们目前的解决方案

javascript - 混合 grunt 和 gulp

在我参与的所有Angular项目中,我一直在使用grunttaskrunner。目前,我找到了一个gulp-protractor-qagulp的插件,可以在测试中即时监视我所有的元素选择器。它擅长它的功能,但现在我必须为另一个构建系统设置一个单独的gulpfile.js配置(我无法在grunt插件中找到合适的替代方案).可以在一个项目中同时使用grunt和gulp构建系统吗?在这种情况下,普遍接受的行动是什么?gulp-protractor-qa只是一个例子。我可以想象,当我在两个构建系统中需要不同的合适插件并且必须做出选择时,这会再次打击我:尝试坐在两把椅子上?

javascript - 如何使用复杂对象或 json 在 ng-table 中添加动态列?

我有以下ng-table代码:seeplunkervarapp=angular.module('main',['ngTable']).controller('DemoCtrl',function($scope,$filter,ngTableParams){vardata=[{name:"Moroni",age:50,address:{coun:'USA',state:'sd'}},{name:"Tiancum",age:43,address:{coun:'UK',state:'sda'}},];$scope.columns=[{title:'Name',field:'name',vis

javascript - AngularJS/Karma - 测试函数返回已解决或拒绝的 promise

尝试在Karma中使用AngularMock进行单元测试,如果我的函数返回了一个被拒绝的promise,但似乎无法在这件事上找到任何令人惊讶的东西。我有一个像UserService这样的服务,它有一个函数:processIdentityResponse,它根据内部逻辑返回一个被解决或被拒绝的promise:processIdentityResponse:function(response){vardeferred=$q.defer();if(response.data.banned){deferred.reject(response);}else{deferred.resolve(re

javascript - 在页面加载之前等待 $rootScope 值在 Angular 中解析

所以我在使用ngView时遇到了这个问题,并且我有一个整个静态的导航栏,如下所示:这个nav.html,导航栏,如果用户注销(使用ng-show)显示一组特定的功能(登录、注册),如果用户登录则显示其他菜单选项。因为重使用当前用户,我将此信息放在$rootScope中,如下所示:$rootScope.currentUser-返回用户对象,$rootScope.signedIn-返回bool值。基本上,我想延迟导航栏的加载,直到加载了$rootScope.signedIn并且是true或false,并且$rootScope.currentUser是一个对象或未定义.我试过在我的app.c

javascript - AngularJS 根据路由在 <html> 标签上动态设置类

我不确定解决这个问题的最佳方法。我想在我的/login路由上动态设置一个类,以便我的登录页面可以有一个大的背景图像。解决这个问题的最佳方法是什么?这是我当前的代码:...angular.module('myApp',['ngRoute']).config(function($routeProvider){$routeProvider.when('/login',{templateUrl:'login.html',controller:'LoginCtrl'}).when('/',{templateUrl:'dashboard.html',controller:'DashboardCtr

javascript - 无法根据文档在 Angular ui-router 中访问 $state.current.data

我正在尝试动态更新页面标题。考虑这样定义的状态:$stateProvider.state('login',{url:'/login',templateUrl:'/templates/views/login.html',controller:'AuthCtrl',data:{title:'Login'}}在页面的HEAD部分:根据tothedocumentation,Iamsupposedtobeabletoaccessmycustomdataproperty:app.directive("pageTitle",function($state){return{restrict:'A',t

javascript - TypeScript - 她一定要拥有它? (它 == 全局范围)

我正在将Angular应用程序转换为使用TypeScript,但这是一个一般的TypeScript问题,与Angular无关。Angularjs文件是沿着这些线的:(function(){varapp=angular.module('myModule',[]);app.controller('myController',['$scope',function($scope){$scope.myNewProperty="Bob";}]);})();我已将其转换为可爱的TypeScript类语法:classmyController{constructor($scope){$scope.myN

javascript - Angular UI Accordion 上的全尺寸可点击面板(?)

问题很简单,我不知道为什么我没有得到我想要的行为,这是AngularUIBootstrapaccordionthatIamusing但是正如您在该示例中看到的那样,打开Accordion的唯一方法是单击标题,这不是我想要的,现在看看thisexample,thisiswhatIwant,无论您在面板上单击何处,无论您是否单击标题,面板都会打开。这是我使用的代码:{{::sport.name}}{{::sport.leagues.length}}{{::league.name}}NoLeagues 最佳答案 实际上我只是想出来了,只需