UI路由器状态,调度/转发到其他状态

时间:2016-02-04 09:28:50

标签: angularjs angular-ui-router

Angular应用程序的入口点(例如登录后),或者找不到其他路径(resolves)应该是 UI路由器'dispatch'状态,决定转发哪个状态,可能基于某些$state.go()。此调度状态是叶状态,因此我不想解决从父状态跳转到子状态的问题。

我认为有两种方法可以将重定向逻辑和实际转换通过onEnter

  1. 在调度状态的 TypeError: Cannot read property 'globals' of null at Object.transitionTo (angular-ui-router.js:3231) at Object.go (angular-ui-router.js:3112) at Object.$stateProvider.state.state.onEnter (home.routes.js:62) at Object.invoke (angular.js:4523) at $state.transition.resolved.then.$state.transition (angular-ui-router.js:3322) at processQueue (angular.js:14792) at angular.js:14808 at Scope.$eval (angular.js:16052) at Scope.$digest (angular.js:15870) at Scope.$apply (angular.js:16160) 函数中。当调度状态是用户跳转到的第一个状态时,这种方法有效。如果已经加载了应用程序,然后用户跳转到调度状态,则控制台上会出现以下错误: {{1}} 我们使用UI路由器0.2.17。这在this issue中提到,已关闭。 此解决方案的优点是不会加载调度视图,但会立即重定向。

  2. 在调度状态的控制器。在这种情况下,加载了调度状态的视图,因此用户在转发到目标状态之前会看到“闪烁”。

  3. 那么我们如何正确实施这种'调度状态'呢?这样的状态总的来说是个坏主意吗?

0 个答案:

没有答案