在一个使用AngularJS和UI Router的单页web应用中,我想创建一个Angular Material <md-select>
,它将在几个视图(也就是UI - Router的"状态")之间切换。
- 在这个柱塞中,我能够使用普通的
<select>
与ng-options,没有角材料来实现这一点。注意<select>
的选定选项如何与浏览到的位置相匹配。 - 在上述与Angular材料挪用的其他柱塞中,事情不会很好地工作:浏览(初始页面加载或URL点击)后,
<md-select>
不会设置为初始位置/状态<md-option>
。
任何想法?
将md-option
的value
字段更改为状态对象而不是仅使用名称(使用ng-value
)解决了问题:
<md-option ng-repeat="state in ctrl.$state.get()" ng-value="state">{{ state.name }}</md-option>
更新恰好
Thanks to epelc on Angular Material github:
<md-option ng-repeat="state in ctrl.$state.get()" ng-value="state.name">{{ state.name }}</md-option>
Plunkr
Numyx的答案非常接近,除了似乎没有必要将JS对象本身分配给ng-value=""
。