我正在尝试制作一个具有多选下拉菜单的组件。当我创建此组件的实例时,我想将其传递给对象列表(在本例中为ICatagory)以显示为选项。我还想向其传递与预选值相同的对象(在我的情况下为ICatagory)的列表。
到目前为止,我可以将其传递给对象列表,并将其显示为选项,我还可以将其传递给所需的preSelected值。但是,即使我可以通过preSelected,也不会将这些值显示为选中状态。
https://stackblitz.com/edit/angular-aryu5y
这是我要澄清的堆叠闪电战。 注意:加载时,没有任何选择。我希望在创建时选择preSelected值。
对于Angular还是有些陌生,所以请原谅您看到的任何反约定模式。
答案 0 :(得分:0)
所有,我都能弄清楚。
您的
中有[compareWith]https://stackblitz.com/edit/angular-qpzg9s
^^^堆栈闪电与解决方案。^^^
代码差异。 在my-drop-down.html中 我添加了:
[compareWith]="byId"
进入垫选
在my-drop-down.ts中 我添加了:
byId(obj1,obj2){
if(obj1 != undefined && obj2 != undefined){
return obj1.id === obj2.id;
}
}
这能够预先选择选项作为对象。
如果有人耳边有更好的答案。