以下关于"多个"的组合。 " as" as"在选项表达式中,当表单首次加载时,ng-options将pristine设置为false。这是一个有角度的错误吗?有没有人知道一种解决方法?
http://plnkr.co/edit/c9ZIgiiisntkJJBeFFdy
<select multiple name="mySelect" id="mySelect"
ng-options="option.id as option.name for option in data.availableOptions"
ng-model="data.selectedOption"></select>
答案 0 :(得分:0)
设置data.selectedOption时,angular选择选项并将pristine设置为false。
您可以使用。$ setPristine()方法手动设置true。
答案 1 :(得分:0)
这是一个有角色的错误。
是的,这看起来像个bug。你不需要选择,但你需要多个。它与我们有关,检查选项更改后视图/模型是否已更改。在这种情况下,我们使用新选择调用$ setViewValue,这会触发对$ setDirty的调用。 作为一种解决方法,您可以添加一个在ngOptions之后运行的指令,该指令在初始加载后强制$ pristine = true和$ dirty = false。