Rumah  >  Soal Jawab  >  teks badan

angular.js - ui-router 视图嵌套时如何指定二级视图显示默认页面?


具体的情况是这样的,现在一个问题是:当跳转到user页面时,右边的uiview是为空的,要点击了左侧的导航才能插入模板,如何在路由中设置二级视图的默认显示页面呢?
上代码:
`$stateProvider

.state('user', {
    url: '/user',
    views: {
        '': {
           templateUrl: 'public/front/temphtml/usercenter/userindex.html' 
        }
    }  
})
.state('user.a', {
    url: '/a',
    views: {
       'content@user': {
           templateUrl: 'public/front/temphtml/usercenter/a.html',
           controller: 'userCtrl'
       } 
    }
})
.state('user.b', {
    url: '/b',
    views: {
       'content@user': {
           templateUrl: 'public/front/temphtml/usercenter/b.html',
           controller: 'userCtrl'
       } 
    }
})`
我想大声告诉你我想大声告诉你2685 hari yang lalu1110

membalas semua(7)saya akan balas

  • 阿神

    阿神2017-05-15 17:11:45

    Diuji dan boleh menyelesaikan masalah anda.
    .state('pengguna', {

    url: '/user',
    views: {
        '': {
           templateUrl: 'public/front/temphtml/usercenter/userindex.html' ,
           controller: function($state){
                $state.go('user.a');//默认显示第一个tab
            }
        }
    }  

    })
    .state('user.a', {

    url: '/a',
    views: {
       'content@user': {
           templateUrl: 'public/front/temphtml/usercenter/a.html',
           controller: 'userCtrl'
       } 
    }

    })
    .state('user.b', {

    url: '/b',
    views: {
       'content@user': {
           templateUrl: 'public/front/temphtml/usercenter/b.html',
           controller: 'userCtrl'
       } 
    }

    })`

    balas
    0
  • 阿神

    阿神2017-05-15 17:11:45

    .state('user', {
        //我觉得你进到user页面直接设置你需要默认显示页面的url就好了
        url: '/a',
        views: {
            '': {
               templateUrl: 'public/front/temphtml/usercenter/a.html' 
            }
        }  
    })
    .state('user.a', {
        url: '/a',
        views: {
           'content@user': {
               templateUrl: 'public/front/temphtml/usercenter/a.html',
               controller: 'userCtrl'
           } 
        }
    })
    .state('user.b', {
        url: '/b',
        views: {
           'content@user': {
               templateUrl: 'public/front/temphtml/usercenter/b.html',
               controller: 'userCtrl'
           } 
        }
    })`

    balas
    0
  • 大家讲道理

    大家讲道理2017-05-15 17:11:45

    Saya biasanya menetapkan halaman lalai untuk melaksanakan $state.go();

    di bawah syarat penghakiman tertentu

    Sebagai contoh, saya menyediakan penghala indeks, dan kemudian menyediakan index.homepage

    Saya akan menilai selepas pengguna log masuk ke halaman Jika log masuk berjaya, lompat terus ke index.homepage. Sudah tentu, templat yang dikonfigurasikan dalam index.homepage adalah halaman lalai

    Jumlah nilai, hanya gunakan $state.go() untuk menunjuk ke laluan apabila anda memerlukannya.

    balas
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-15 17:11:45

    Tetapkan lalai:

    app.config(function($urlRouterProvider){
        $urlRouterProvider.when('', '/index');
    });

    balas
    0
  • 大家讲道理

    大家讲道理2017-05-15 17:11:45

    Pantang larang melompat ke /user(添加属性 abstract:true ). Tiada sebab untuk melakukan ini, lompat sahaja ke laluan yang anda mahu.

    balas
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-15 17:11:45

    Bagaimana untuk menyelesaikan masalah pemulangan alamat yang terlibat dalam penghalaan berbilang peringkat

    balas
    0
  • PHP中文网

    PHP中文网2017-05-15 17:11:45

    Adakah pemilik soalan mempunyai penyelesaian?

    balas
    0
  • Batalbalas