我如何模拟 AngularJS 中的选项卡自动点击?

How can i simulate a tab auto-click in AngularJS?

我有一个带有项目文本的下拉菜单 Tab1 (itemValue=1) Tab2 (itemvalue=2)

 <ul class="nav nav-tabs">
          <li ng-click="setTab(1)" class="active"><a href="#tab1" data-toggle="tab">Tab1</a></li>
          <li ng-click="setTab(2)"  ng-show="tabTab2Visible"><a  href="#tab2" >Tab2</a></li>
          <li ng-click="setTab(3)"  ng-show="tabTab3Visible"><a  href="#tab3" >Tab3</a></li>
     </ul>

如果用户从下拉列表中选择 Tab1,则 Tab2 不可见,就好像用户单击了 tab2 以显示详细信息一样 我想在 angularjs 中自动模拟标签点击? 我如何在 AngularJs 中执行此操作?

我认为其他显示是错误。也许你可以分享更多代码。无论如何。我创建了一个小示例来展示,如果您使用下拉菜单或 li,它是如何工作的。

我希望这能修复您的错误或提示您足以解决它!也许,您可以分享更多背景信息。

检查 plnkr 是否正常工作:https://plnkr.co/edit/jsCt9ROBstC4W80s

脚本:

import angular from 'angular';

angular.module('plunker', []).controller('MainCtrl', function($scope) {
  $scope.tabs = [{
    name: 'Tab 1',
  }, {
    name: 'Tab 2',
  }, {
    name: 'Tab 3',
  }];
  $scope.setTab = function (tabName) {
    $scope.urlTab = tabName;
  }

  $scope.urlTab = $scope.tabs[0].name;
  $scope.dropdownTab = $scope.tabs[0];
});

HTML

  <body ng-app="plunker" ng-cloak>
    <div ng-controller="MainCtrl">
      <h2>UL Example</h2>
      <ul>
        <li ng-repeat="tab in tabs" ng-click="setTab(tab.name)" class="active"><a href="" data-toggle="tab">{{tab.name}}</a>
        </li>
      </ul>
      UL Tab: {{ urlTab }}<br/>

      <div> 
        <div ng-if="urlTab === tabs[0].name">Tab 1</div>
        <div ng-if="urlTab === tabs[1].name">Tab 2</div>
        <div ng-if="urlTab === tabs[2].name">Tab 3</div>
      </div>
      <h2>Dropdown Example</h2>
      <select ng-options="tab as tab.name for tab in tabs track by tab.name" ng-model="dropdownTab">
      </select><br/>
      Dropdown Tab: {{ dropdownTab.name }}
      <div> 
        <div ng-if="dropdownTab.name === tabs[0].name">Tab 1</div>
        <div ng-if="dropdownTab.name === tabs[1].name">Tab 2</div>
        <div ng-if="dropdownTab.name === tabs[2].name">Tab 3</div>
      </div>
    </div>
  </body>