自定义角度指令,用于隐藏或显示多个视图中的元素

时间:2016-09-26 17:01:30

标签: javascript angularjs angularjs-directive

我正在将Angular js用于模块化应用程序。当公司的用户进入应用程序时,它确定拥有该公司的机动船的数量,并在菜单视图中显示多选,以便选择一个或其他机动船来管理它。

<ul class="dropdown-menu animated fadeIn m-t-xs">
  <li>
    <a ng-click="changeBoat(boatInfo)" class="ng-binding">
            182 /  ASTROBOAT
        </a>
    </li>
  <li>
        <a ng-click="changeBoat(boatInfo)" class="ng-binding">
            180 /  START BOAT
        </a>
    </li>
  <li>
        <a ng-click="changeBoat(boatInfo)" class="ng-binding">
            178 /  STORM BOAT
        </a>
    </li>
</ul>

在同一屏幕的仪表板模块中,应用程序会显示一张包含所有船只信息的表格。关键是,当公司只有一艘船时,没有意义显示选择器或桌子。我想在这些情况下使用不同的组件。所以我在创建一个指令user-if-single-boat,它将在所有视图中隐藏或显示组件,如下所示:

<ul class="dropdown-menu animated fadeIn m-t-xs" user-if-single-boat> ...
<table class="..." user-if-single-boat> ...

我也知道也许我可以使用ng-if来验证$rootScope变量(<ul class="dropdown-menu animated fadeIn m-t-xs" ng-if='isMultiBoats'>),但我不想使用$rootScope我需要通过我的所有应用程序模块来验证这些功能。

0 个答案:

没有答案