具有空值的select的angularjs筛选器

具有空值的select的angularjs筛选器,select,filter,angularjs,Select,Filter,Angularjs,我对AngularJS中的过滤器有问题。在这里查看我的代码: 我有一个选择,它在ng选项字段中使用过滤器: ng-options="listitem as listitem.Name for listitem in MyList.Items|filter:FilterList" 我还使用空选项,因为此选择是可选的 作为select的ng型号,我使用值“SelectedList” 现在的问题是,当筛选器与任何内容都不匹配时,my$scope中的“SelectedList”变量就不为null 通过

我对AngularJS中的过滤器有问题。在这里查看我的代码:

我有一个选择,它在ng选项字段中使用过滤器:

ng-options="listitem as listitem.Name for listitem in MyList.Items|filter:FilterList"
我还使用空选项,因为此选择是可选的

作为select的ng型号,我使用值“SelectedList”

现在的问题是,当筛选器与任何内容都不匹配时,my$scope中的“SelectedList”变量就不为null

通过选择“item1”并按“Go”来模拟:SelectedList现在正确地成为item1对象。现在过滤器更改,列表为“空”:只有“-”项,这也是预期的。现在再次按下“go”键,我将得到SelectedInList中的“null”,但它仍然是item1对象,这是我不希望看到的

这种方法有什么解决方案吗

致以最良好的祝愿,
Tom,

似乎当列表被过滤并且值不再存在时,
ng模型上没有更新。这看起来很像一个bug,但我需要更多的研究来理解原因


无论如何,解决方案是在
Add
方法的末尾将
selectedList
设置为
null

感谢您的解决方案。虽然不是那么直观,但似乎很有效:)