我正在将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
我需要通过我的所有应用程序模块来验证这些功能。