Webpack Uglify导致路由停止工作
当我uglify webpack捆绑包时,路由停止工作,而没有任何错误消息或日志消息.我正在使用oclazyload到懒惰的负载. rout.js module.exports = function(app) { var routeConfig = function($stateProvider) { $stateProvider .state('home', { url: '/', templateUrl: 'app/dashboard/dashboard.min.html', title: 'Home', ncyBreadcrumb: { label: 'Home' } }) .s
angular ui 路由器后退按钮问题
'use strict'; angular.module('cbApp') .config(function ($stateProvider) { $stateProvider .state('search', { url: '/college/search', templateUrl: 'app/collegesearch/views/collegesearch.html', controller: 'collegeSearchCtrl' }) .state('searchCollegeFilter', { url: '/college/search/:streamId?cities&courses&branches&ordering', templateUrl: 'app/collegesearch/views/collegesearch.html',
12 2024-04-04
编程技术问答社区
在angular ui-router中改变状态而不改变浏览器历史记录
假设我们有这样的逻辑: 从国家A,更改为州b. 每当我们到达状态B时,应用程序总是通过调用$state.go(stateC) 将我们重定向到状态C. 现在我们处于状态C 我的问题是如何回到状态c(鉴于状态a可以是我们在运行时不知道的任何状态,这意味着用户可以从任何其他州访问状态B) 解决方案 使用location选项与value "替换" ... $state.go(stateC, null, { location: 'replace' }) 请参阅 位置 - {boolean = true | string =} - 如果true将在位置栏中更新URL,如果false不会.如果字符串必须为"replace",它将更新URL,并且更换最后的历史记录. 其他解决方案 您可以跟踪服务中的访问州,然后只需致电$ state.go在以前的状态. 您可以观看状态的变化: $rootScope.$on('$stateChangeStar
2 2024-04-04
编程技术问答社区
基于导航历史的Angular Breadcrumb,而不是路线路径
是否有一种方法可以实现基于导航历史的面包屑,而不是基于正常路径的基于路径的面包屑. 示例 路线 : 主页-HCHILD1 -HCHILD1.1 主页-HCHILD2 -HCHILD2.1 如果用户从家庭页面上导航到HCHILD2.1,则应该是BreadCrumb 主页| hchild2.1 而不是 主页| HCHILD2 | hchild2.1 然后,如果用户从HCHILD2.1导航到HCHILD1.1,那么BreadCrumb应该是 主页| hchild2.1 | HCHILD1.1 而不是 主页| HCHILD1.1 | HCHILD1.1 我所拥有的是基于路线路径的基于我的目的,因为我只能导航到paranet组件而不是前面的组件. 谢谢 解决方案 使用面包屑组件在导航终端路线中填充最后一个路线. 路线必须具有面包屑数据 //Home route { path: '', component: HomeCompon
18 2024-04-03
编程技术问答社区
父子范围与模态的问题:使用angular ui路由器与angular bootstrap模态($uibModal)。
这是我当前的代码: 父级控制器 在 vm.animationsEnabled = true; vm.open = function (size) { var modalInstance = $uibModal.open({ animation: vm.animationsEnabled, templateUrl: 'app/entities/interview-stage/interview-stage-list-add-dialog.html', controller: 'InterviewStageListAddDialogController', controllerAs: 'vm', size: 'cs', }); modalIns
使用来自任何父级的ui-router的模态对话框,如何正确指定状态?
我正在尝试使用Angular的UI-Router打开模态对话框,如这里. 目标是在任何地方都可以访问对话框,不一定需要URL,但是如果我可以打开对话框的页面,那就太好了. 这是损坏的样本: http:////plnkr.co/eedit/pplnkr.co/edit/blkyme98e3cik9pqujth5 单击"菜单"应从任一页上打开对话框. 路由逻辑: app.config(function($stateProvider,$locationProvider, $urlRouterProvider, modalStateProvider) { $urlRouterProvider.otherwise("/"); $locationProvider.html5Mode(true); $stateProvider .state("app", { url: "", abstarct: true, vi
4 2024-04-02
编程技术问答社区
在Bootstrap-ui模式下使用ui-router
我知道这已经被涵盖了很多次,大多数文章都指的是这一点代码:带有自定义URL的模式窗口,带有自定义URL一个> ,但我只是不明白.我发现这一点都不清楚.我还发现了这个 编辑:这是我需要的帮助. 所以让我尝试解释我要实现的目标.我有一个表格可以添加新项目,并且我有一个链接"添加新项目".我希望当我单击"添加新项目"时,一个模态弹出了我创建的" add-item.html"的表格.这是一个新状态,因此URL更改为/附加项目. 我可以填写表格,然后选择保存或关闭.关闭,关闭模态:P(奇怪).但是我也可以单击以关闭模式并返回上一页(状态). 我在这一点上不需要关闭的帮助,因为我仍在努力真正使模态工作. 这是我的代码: 导航控制器:(这甚至是放置模态函数的正确位置吗?) angular.module('cbuiRouterApp') .controller('NavbarCtrl', function ($scope, $location, Auth, $moda
4 2024-04-02
编程技术问答社区
从历史记录中删除页面,所以 "返回 "可以正常工作
我有我需要登录的应用程序才能进入其他页面. 因此,第一页是"登录",它检查您是否已登录,如果是的,则将重定向到主页应用程序,如果不是,它将显示登录页面. 现在问题是当用户在记录页面区域内时,他会单击回去,他将转到"登录"页面并将其重定向回到主页,因为他已经登录了. 所以他被困在无限的循环中. 如何从历史记录中删除登录页面. 就像在Android中" Android"从历史堆栈中删除活动" 解决方案 这是解决方案! 简单地使用: $ionicHistory.nextViewOptions({ disableBack: true }); 登录功能的示例: $scope.login = function () { Security.login($scope.cred.email, $scope.cred.password) .success(function(data) { Security
8 2024-03-26
编程技术问答社区
如果用户没有登录,使用UI-Router和AngularJS转移到另一个主页上
我想拥有两个主页,第一个是针对尚未登录的用户,第二个是登录的用户. 这是我当前的设置: .config(function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider) { $urlRouterProvider .otherwise('/'); $locationProvider.html5Mode(true); $httpProvider.interceptors.push('authInterceptor'); }) .factory('authInterceptor', function ($rootScope, $q, $cookieStore, $location) { return { // Add authorization token to headers request: functio
12 2024-03-20
编程技术问答社区
推迟Angular UI Router $stateChangeStart,直到收到服务器的授权响应。
我使用一个Angular应用程序使用UI路由器,在该路由器上,如果存在,则在该应用程序运行时,我试图验证用户的令牌.我还在检查用户是否有权访问某些路线.问题在于,$stateChangeStart在我从授权端点接收回响应之前正在运行.这是一些代码(下面的js coffeescript) - 这全都在我的run块中. app.run(($rootScope, $state, $stateParams, $log, Auth) -> currentState = 'home' $rootScope.$state = $state # read a cookie if cookie exists if Auth.setAuthenticationToken() # hit api endpoint to validate token Auth.validateToken (user) -> # route to current state
6 2024-03-20
编程技术问答社区
Angularjs使用UI-Router Resolve进行认证
现在,我有一个简单的角度设置,该设置具有登录状态和一个云状态.我想做到这一点,以便只有在用户进行身份验证时才能运行云状态.如果没有,它将引导他们进入登录状态. 到目前为止,我相信我已经设置了"解决"设置,并且我设置了.run()函数,请重定向到登录状态. . 我只是在弄清楚如何使authenticated: authenticated获得所需的东西时遇到了麻烦.我知道我必须在某个地方制作authenticated函数,我只是不知道正确的方法. 我是Angular的新手,所以如果有人有任何建议,我很乐意感谢他们. var routerApp = angular.module('app', ['ui.router']) .config(function($stateProvider, $urlRouterProvider, $locationProvider) { $locationProvider.html5Mode(true); $urlRo
38 2024-03-20
编程技术问答社区
在从Rest API获取数据前运行$stateChangeStart
我试图进行用户登录身份验证,我已经用方法isAuthenticated制作了一个名为AuthService的服务,在该服务中,我致电API进行交叉检查用户是否登录(我也是我) '将用户稍后使用用户角色),然后我在$rootScope.$on中调用此服务,但它不再等到我的服务从API获取数据,这是我的app.js var app = angular.module('myApp', ['ngRoute', 'ui.router', 'ngAnimate', 'toaster', 'ui.bootstrap']); app.config(['$routeProvider', '$locationProvider', '$stateProvider', '$urlRouterProvider', function ($routeProvider, $locationProvider, $stateProvider, $urlRouterProvider) { $sta
8 2024-03-20
编程技术问答社区
Angular ng-submit没有触发所需的控制器方法
在Angular 1.4.7中,我正在尝试在此plunk 由于某种原因,我无法获得login()在我的loginCtrl控制器代码中触发的方法. 相反,它在做的是一个老式的URL重定向,其用户/密码参数以形式变量传递.我不知道怎么了. 在我发布的代码中的关键点: 1)登录格式.html包含ng-submit="login.loginUser()" 2)app.config包含登录路由'login',该路由'login'挂在'LoginCtrl as login' 中 3)'LoginCtrl'包含匿名方法login.loginUser 4)app.js重定向到我的login状态如果USERID不确定. 这是login-form.html模板: {{error}}
6 2024-03-20
编程技术问答社区
AngularJS登录表单与ng-click不起作用
我在此plunk 由于某种原因,我无法获得登录方法来触发我的loginctrl控制器代码. 为什么这个示例有效,而我的不能? http://plnkr.co/edit/h4svl6?p = preview 相反,它在做的是一个老式的URL重定向,其用户/密码参数以形式变量传递.我不知道怎么了. 这是LoginCtrl代码以及login-form.html模板: (function () { 'use strict'; angular.module('routerApp').controller('LoginCtrl', ['$rootScope', '$scope', authenticate]); function authenticate($rootScope, $scope, userService) { var login = this; login.log
28 2024-03-19
编程技术问答社区
Angular-app,认证和(ui-)路由器中的解析器顺序
这个问题是指 angular-app 项目及其对用户进行身份验证的方式. 使用路由器上的Resolve子句,原始实现后卫访问某些URL.这看起来像: $routeProvider.when('/projects', { templateUrl:'projects/projects-list.tpl.html', controller:'ProjectsViewCtrl', resolve:{ projects:['Projects', function (Projects) { //TODO: fetch only for the current user return Projects.all(); }], authenticatedUser: securityAuthorizationProvider.requireAuthenticatedUser } }); 直到用户进行身份验证并获取项目(以防止UI闪烁),该视图才能呈现.如果未
10 2024-03-19
编程技术问答社区
异步通信跨页
我有一个页面addin.html.它可以通过 弹出另一个页面editor(不一定在同一域中) popup = window.open("https://localhost:3000/#/posts/editor/", "popup") 然后,这两个页面都有 一个侦听器,可以通过 互相发送数据 // listen: function receiveMessage(event) { document.getElementById("display").innerHTML = JSON.stringify(event.data); } window.addEventListener("message", receiveMessage, false); // send: function sendMessage() { popup.postMessage("data", popup.location.href); } editor通过ui-router实现.最初
12 2024-03-18
编程技术问答社区
Angular JS:异步工厂调用问题
我是Angular的新手,我正在创建一个简单的应用程序.它在项目之间导航,通过JSON吸引: 我也在使用工厂,在该工厂中我打电话,例如get或getOne,以便在一个地方处理$http,仅在尚未获取数据时调用它. 当您在主页上启动时,这一切都很好,但是当您在单个项目页面上启动时,get和getOne均可同时调用,从而删除重复的数据.您可以通过在其自己的窗口中打开Plunker并转到/#/projects/1. 来测试这一点. 我知道为什么会发生这种情况,我只是不知道如何停止它. 是否有一个简单的修复程序,还是我以完全错误的方式进行操作? 感谢您看看. 解决方案 让您的功能通过$q而不是原始数据返回承诺.然后,您将能够用.then()链接它们以实现所需的等待: get: function() { // Create a deferred object var deferred = $q.defer(); // Do stu
20 2024-03-18
编程技术问答社区
延迟路线的CANactivate方法调用直到后端服务返回结果Angular 7
需要延迟路由Canactivate方法调用,直到我的身份验证服务返回用户ID的用户角色. 我们的Angular应用程序没有任何登录页面,它使用服务器登录的用户ID. 当用户访问URL时,身份验证服务在App.compoment.ts中被调用,但是在服务返回任何结果之前,请调用Canactivate方法,并且当时没有用户角色.因此阻止所有用户访问. 我尝试使用异步并使用HTTPS调用等待以获取用户数据,但这也无法使用. 谁能在这里帮忙? 解决方案 在这里,rxjs的pipe()很有用,而是订阅第一次使用pipe(). canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable { return this​.​loginService​.​isLoggedIn​().​pipe​( map(e => {
8 2024-03-17
编程技术问答社区