vue-select实现multiselect效果

记录下用vue-select组件实现多选框,分享给大家,也好做个备忘。查看原文

vue-select

github上面一个基于vue实现的一个多选下拉框的组件,地址请点击。

里面文档写的很清楚,对vue.js比较熟悉的童鞋阅读完文档即可实现一个简单的多选框。

效果

可以参考文档中的例子,实现单选下拉框、多选下拉框等效果。

如果options是一个列表,则下拉框中选择对应每个item,这个不难理解。当options是一个嵌套object的列表时,可以使用label标签指定显示具体的标签。
比如,点击运行代码:

vue-select实现multiselect效果_第1张图片
image.png

但是,有时候我们并不需要选择之后保存整个object
假如现在有这样一个需求,students,是一个只包含student_id的列表,在下拉选择框中选择任何一个student都只保存其student_id。在仔细查看了官方提供的文档之后,发现并没有实现这样的功能,所以只能自己想办法解决了。

最终效果,点击运行代码:

vue-select实现multiselect效果_第2张图片
image.png

实现原理

其实很简单,就是新建一个存放student_obj的一个list,当触发了下拉框的input事件后,将选择的student的id放到对应的list里面去。

你可能感兴趣的:(vue-select实现multiselect效果)