Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS UI路由器:抽象状态+;儿童国家不起作用_Javascript_Angularjs_State_Angular Ui Router - Fatal编程技术网

Javascript AngularJS UI路由器:抽象状态+;儿童国家不起作用

Javascript AngularJS UI路由器:抽象状态+;儿童国家不起作用,javascript,angularjs,state,angular-ui-router,Javascript,Angularjs,State,Angular Ui Router,我试图使用抽象状态,但无法加载子对象 我的应用程序设置如下: angular .module('milordApp', [ 'ui.router', 'ngAnimate', 'ngCookies', 'ngMessages', 'ngResource', 'ngRoute', 'ngSanitize', 'ngTouch' ]) .run(function($rootScope) { $rootScope.$on('$r

我试图使用抽象状态,但无法加载子对象

我的应用程序设置如下:

angular
  .module('milordApp', [
    'ui.router',
    'ngAnimate',
    'ngCookies',
    'ngMessages',
    'ngResource',
    'ngRoute',
    'ngSanitize',
   'ngTouch'
])
.run(function($rootScope) {
    $rootScope.$on('$routeChangeStart', function(event, toState,  toParams, fromState, fromParams) {
      console.log(toState, toParams, fromState, fromParams);
    });
})
.config(function($stateProvider, $urlRouterProvider){
    $urlRouterProvider.otherwise("/login");
    $stateProvider
      .state('login', {
        url: '/login',
        templateUrl: 'views/login.html',
        controller: 'LoginCtrl',
        data: {
          requireLogin: false
        }
     })
     .state('app', {
       abstract: true,
       url: '/app',
       data: {
        requireLogin: true
       }
     })
     .state('app.dashboard', {
       url: '/dashboard',
       templateUrl: 'views/dashboard.html',
       controller: 'DashboardCtrl',
     });
});
登录路径工作正常。但是,app或app.dashboard路由未注册,因为我甚至无法从控制器注册console.log

请注意index.html正在正确创建导航

<ul class="nav navbar-nav">
   <li><a ui-sref="login" href="#/login">Login</a></li>
   <li><a ui-sref="app.dashboard" href="#/app/dashboard">Dashboard</a></li>
</ul>

如果抽象状态的片段是真实的(按原样),则问题应按如下方式解决:

.state('app', {
   abstract: true,
   url: '/app',
   data: {
    requireLogin: true
   }
   // add template for child
   template: "<div ui-view></div>",
 })
.state('app'{
摘要:没错,
url:“/app”,
数据:{
requireLogin:对
}
//为子对象添加模板
模板:“”,
})
简单地说,每个州都需要注入到某个地方。如果我们不使用命名视图(甚至绝对命名),则预计:

每个子对象都被注入到其父目标的ui视图中


太好了,修好了。因此,在这种情况下,我可以在索引中定义多个div,并为它们使用不同的抽象状态。一个例子是在div中有一个特定图形的抽象状态,这个抽象状态可以根据勾选的复选框进行更改,这真的很神奇。可能会有很多州,很多孩子。关键是要为他们设定一个目标。或者使用UI路由器的其他功能。。。e、 g.绝对命名、命名视图等。。但是阅读维基并观察它;)希望它能帮上忙哦,天哪,如果我不是的话,我会嫁给你的。我一直在寻找这个问题,并把我的头发拔出来。@hogan,这太神奇了;)享受强大的UI路由器;)