zoukankan      html  css  js  c++  java
  • angular-ui-router 多视图

    文件结构:

    - index.html                   
    - app.js                        
    - monitoring.html           
          - page1.html             
          - page2.html        
    - search.html  

    index.html (第一个路由)

    1     <script type="text/javascript" src="jsLib/angular.js"></script>
    2     <script type="text/javascript" src="jsLib/angular-ui-router.js"></script>
    3 
    4 <a ui-sref="monitoring">monitoring</a>
    5 <a ui-sref="seach">seach</a>
    6 
    7 <div ui-view></div>

    app.js

     1 var faceApp = angular.module('faceApp',['ui.router']);
     2 faceApp.config(function($stateProvider, $uilRouterProvider){
     3    $urlRouterProvider.otherwise('/monitoring') ;
     4    
     5    $stateProvider
     6         .state('monitoring',{
     7             url: '/monitoring',
     8             templateUrl: 'pages/monitoring.html',
     9             controller: function($state) {
    10                 $state.go('monitoring.page1')//默认显示出第一个tab
    11             }
    12         })
    13         .state('monitoring.page1',{
    14             url: '/page1',
    15             templateUrl: 'pages/page1.html',
    16             controller:  'Page1Ctrl'
    17         })
    18         .state('monitoring.page2',{
    19             url: '/page2',
    20             templateUrl: 'pages/page2.html',
    21             controller:  'Page2Ctrl'
    22         })
    23         .state('search',{
    24             url: '/search',
    25             templateUrl: 'pages/search.html',
    26             controller: 'SearchCtrl'
    27         })
    28 });
    monitoring.html (添加第二个路由,第二级路由,嵌套在第一级路由中
    1 <a ui-sref=".page1">monitoring</a>
    2 <a ui-sref=".page2">seach</a>
    3 
    4  <div ui-view></div>

    ui-router 视图嵌套时指定二级视图显示默认页面:

         当跳转到 monitoring 页面时,monitoring 中的页面默认为空,要点击了导航才能插入模板,需要使用 $state.go()来指向某个路由(代码如上)

    【二级视图默认页面】:若二级实图有自己的控制器,可以将二级视图的主页面和第一个子页面设置为同一个控制器,来达到设置默认页面的方法。

    $stateProvider
            .state('page',{
                url: '/page',
                templateUrl: 'pages/page.html',
                controller: 'PageCtrl'
            })
            .state('page.page1',{
                url: '/page1',
                templateUrl: 'pages/page1.html',
                controller: 'PageCtrl'
            })
            .state('page.page2',{
                url: '/page2',
                templateUrl: 'pages/page2.html',
                controller: 'Page2Ctrl'
            })
  • 相关阅读:
    (1)一步一步开发一个简单二维CAD之基本框架
    weekly review 200844: Lazy
    《理解专业程序员》读书笔记
    weekly review 200843: House M.D.
    weekly review 200846: table tennis
    weekly review 200845: Work Hard Not Enough
    Change Your Mind and Your Life Will Follow
    weekly review 200847: tdd
    爱心·王搏计划“走出地震”影展需要志愿者(11月24日——11月26日)
    read_notes
  • 原文地址:https://www.cnblogs.com/miny-simp/p/7762873.html
Copyright © 2011-2022 走看看