<legend id='b8l0b'><style id='b8l0b'><dir id='b8l0b'><q id='b8l0b'></q></dir></style></legend>
      • <bdo id='b8l0b'></bdo><ul id='b8l0b'></ul>

    1. <tfoot id='b8l0b'></tfoot>
    2. <i id='b8l0b'><tr id='b8l0b'><dt id='b8l0b'><q id='b8l0b'><span id='b8l0b'><b id='b8l0b'><form id='b8l0b'><ins id='b8l0b'></ins><ul id='b8l0b'></ul><sub id='b8l0b'></sub></form><legend id='b8l0b'></legend><bdo id='b8l0b'><pre id='b8l0b'><center id='b8l0b'></center></pre></bdo></b><th id='b8l0b'></th></span></q></dt></tr></i><div id='b8l0b'><tfoot id='b8l0b'></tfoot><dl id='b8l0b'><fieldset id='b8l0b'></fieldset></dl></div>
    3. <small id='b8l0b'></small><noframes id='b8l0b'>

        带有 ui-router 的 angular-material 中每个选项卡的单独控制器

        时间:2023-10-21

          <tbody id='NgByd'></tbody>

        <small id='NgByd'></small><noframes id='NgByd'>

              <bdo id='NgByd'></bdo><ul id='NgByd'></ul>
              <tfoot id='NgByd'></tfoot>
            • <i id='NgByd'><tr id='NgByd'><dt id='NgByd'><q id='NgByd'><span id='NgByd'><b id='NgByd'><form id='NgByd'><ins id='NgByd'></ins><ul id='NgByd'></ul><sub id='NgByd'></sub></form><legend id='NgByd'></legend><bdo id='NgByd'><pre id='NgByd'><center id='NgByd'></center></pre></bdo></b><th id='NgByd'></th></span></q></dt></tr></i><div id='NgByd'><tfoot id='NgByd'></tfoot><dl id='NgByd'><fieldset id='NgByd'></fieldset></dl></div>

              • <legend id='NgByd'><style id='NgByd'><dir id='NgByd'><q id='NgByd'></q></dir></style></legend>

                1. 本文介绍了带有 ui-router 的 angular-material 中每个选项卡的单独控制器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我正在尝试实现我的 md-tabs,因此每个 md-tab 都是使用 angular-material 的单独状态.我当前的标记如下所示:

                  I'm trying to implement my md-tabs so each md-tab is a separate state using angular-material. My current markup looks like this:

                    md-tabs.is-flex.auto-flex(selected="selectedIndex",layout="vertical")
                       md-tab(on-select="selectTab(0)",label="Player",ui-sref="state1")
                          div.tab(ui-view)
                  
                       md-tab(on-select="selectTab(1)",label="Map",ui-sref="state2")
                          div.tab(ui-view)
                  

                  不过,我认为这不是 ui-router 的有效标记.是否可以使用当前版本的 angular-material 和 ui-router 做到这一点?

                  I don't think this is valid markup for ui-router, though. Is it possible to do this with the current version of angular-material and ui-router?

                  推荐答案

                  如果你命名你的 ui-view 元素(例如 <div ui-view="player"></div>) 然后你可以在你的 $stateProvider 配置中定位它们.

                  If you name your ui-view elements (e.g. <div ui-view="player"></div>) then you can target them in your $stateProvider config.

                  因此,鉴于 template.html 中的以下标记:

                  So, given the following markup in template.html:

                  <md-tabs md-selected="currentTab">
                      <md-tab label="Player" ui-sref="tabs.player">
                          <div ui-view="player"></div>
                      </md-tab>
                      <md-tab label="Map" ui-sref="tabs.map">
                          <div ui-view="map"></div>
                      </md-tab>
                  </md-tabs>
                  

                  您可以使用以下 $stateProvider 配置来定位每个 ui-view 元素(并更新 currentTab 索引):

                  You could target each ui-view element (and update the currentTab index) with the following $stateProvider config:

                  .state('tabs', {
                      abstract: true,
                      url: '/tabs',
                      templateUrl: 'template.html',
                      controller: function($scope) {
                        $scope.$on('$stateChangeSuccess', function(event, toState, toParams, fromState, fromParams) {
                          $scope.currentTab = toState.data.selectedTab;
                        });
                      }
                    })
                  .state('tabs.player', {
                      url: '/player',
                      data: {
                        'selectedTab': 0
                      },
                      views: {
                        'player': {
                          controller: playerController
                        }
                      }
                    })
                  .state('tabs.map', {
                      url: '/map',
                      data: {
                        'selectedTab': 1
                      },
                      views: {
                        'map': {
                          controller: mapController
                        }
                      }
                    })
                  

                  您现在需要做的就是定义 playerControllermapController.您仍然可以将部分模板等加载到 ui-view 中,请参阅 多个命名视图.

                  All you need to do now is define playerController and mapController. You can still load partial templates etc. into the ui-view, see the section on Multiple Named Views.

                  这篇关于带有 ui-router 的 angular-material 中每个选项卡的单独控制器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  上一篇:错误:Angular Ui 路由器状态更改时超出了最大调用堆栈大小 下一篇:AngularJS ui-router $state.go('^') 仅更改地址栏中的 URL,但不加载

                  相关文章

                    <i id='ROsyu'><tr id='ROsyu'><dt id='ROsyu'><q id='ROsyu'><span id='ROsyu'><b id='ROsyu'><form id='ROsyu'><ins id='ROsyu'></ins><ul id='ROsyu'></ul><sub id='ROsyu'></sub></form><legend id='ROsyu'></legend><bdo id='ROsyu'><pre id='ROsyu'><center id='ROsyu'></center></pre></bdo></b><th id='ROsyu'></th></span></q></dt></tr></i><div id='ROsyu'><tfoot id='ROsyu'></tfoot><dl id='ROsyu'><fieldset id='ROsyu'></fieldset></dl></div>

                  1. <legend id='ROsyu'><style id='ROsyu'><dir id='ROsyu'><q id='ROsyu'></q></dir></style></legend>
                    <tfoot id='ROsyu'></tfoot>

                    • <bdo id='ROsyu'></bdo><ul id='ROsyu'></ul>

                    <small id='ROsyu'></small><noframes id='ROsyu'>