javascript-md-autocomplete-删除建议中的选定项目
作者:互联网
我试图在用户选择一个项目并将其标记为收藏时删除建议中的md项目.这里要澄清的问题是下面的结构.
假设我们具有这种状态结构.
function loadAll() {
var allStates = [
{
display : Alabama,
value : alabama,
is_favorite : false
},
{
display : Alaska,
value : alaska,
is_favorite : false
},
{
display : California,
value : california,
is_favorite : false
},
{
display : Colorado,
value : colorado,
is_favorite : false
},
{
display : Florida,
value : florida,
is_favorite : false
},
{
display : Georgia,
value : georgia,
is_favorite : false
},
];
return allStates;
}
这是我在用户选择对象时将状态标记为“收藏夹”时所做的操作,我将该对象放置在功能md-selected-item-change上.
function selectedItemChange(object) {
if (object) {
object.is_favorite = true;
}
}
现在可以更改createFilterFor()以从结果中排除选择特定状态后具有is_favorite == true的状态?
function createFilterFor(query) {
var lowercaseQuery = angular.lowercase(query);
return function filterFn(state) {
return (state.value.indexOf(lowercaseQuery) === 0);
};
}
香港专业教育学院到目前为止已经尝试过,但是不能提供正确的结果.
return (state.value.indexOf(lowercaseQuery) === 0 && state.is_favorite == false);
UPDATE
解决方法:
有一个简单的解决方法:
md-items="item in ctrl.querySearch(ctrl.searchText)| filter:{ is_favorite:false }"
您所要做的就是将过滤器放到控件的源代码中.
请检查代码笔:http://codepen.io/ash972/pen/ZLYNPM
标签:angularjs,angular-material,md-autocomplete,javascript 来源: https://codeday.me/bug/20191026/1936144.html