Angular Material md-select 有没有 select all 选项的版本

Is there any version of Angular Material md-select with select all option

我一直在我的一个项目中使用 Angular Material。突然我意识到需要在 md-select 上设置 select all 选项。我想我会提出一个 git 请求。

然而,目前我正在寻找一个类似的带有复选框的下拉结构(比如 md-select 多个)还有一个 select 全部选项。

我知道我可以将一个虚拟的空条目推入 md-select 选项数组并在其 selection 上以相反的方式操作。但这需要在我当前的结构中进行大量代码更改,而且也不是一件优雅的事情。

我试着在 bootstrap 和 jQuery-UI 中寻找它,但还没有找到。有没有人知道这样的控制。任何重定向都会有所帮助。

您可以在 HTML 中轻松做到这一点。如果您还需要 "select none" 选项,它只需要一行代码或两行代码。例如

<md-input-container>
  <label>Users</label>
    <md-select ng-model="selectedUser" multiple="" 
               ng-model-options="{trackBy: '$value.id'}">
      <md-optgroup label="Users">
      <md-option ng-repeat="user in users" 
                 ng-value="user">{{ user.name }}</md-option>
      </md-optgroup>
    </md-select>
</md-input-container>
<button ng-click="selectedUser=users">all</button>
<button ng-click="selectedUser=[]">none</button>

Example in Plunker.

编辑:我更新了下面的 Plunker,以在 "Users" optgroup 标题旁边的 select 框中显示 "all" 按钮。相关变化:

    <md-select ng-model="selectedUser" multiple="" ng-model-options="{trackBy: '$value.id'}">
      <button ng-click="doSelectedUser()" style="float:right">all</button>
      <md-optgroup label="Users">