最近,项目中碰到需求,要求任务类型可以从下拉框(后台返回的数据)中选择,也可以手动输入添加新项,项目用的是antd-vue,所以最接近的组件就是a-select组件了,废话不多说,改造方法如下:

HTML:

 <a-select
show-search
:value="value"
optionLabelProp='children'
:autoClearSearchValue="false"
placeholder="请选择或输入任务类型"
:default-active-first-option="false"
:show-arrow="false"
:filter-option="true"
:not-found-content="null"
@search="handleSearch"
@blur="handleBlur"
@change="handleChange"
>
<a-select-option v-for="(item,index) in typeData" :key="index">
{{ item.work_type }}
</a-select-option>
</a-select>

data定义:

 data () {
return {
value:undefined,
typeData:[],//任务类型数组
}
}

methods方法:

  /**
* @function 任务类型文本框的值变化时的回调
* @author ***
* @time 2020-08-17
**/
handleSearch (value) {
this.handleChange(value);
},
/**
* @function 任务类型改变时的回调
* @author ***
* @time 2020-08-17
**/
handleChange (value) {
this.value = (!isNaN(value)&&value!='')?this.typeData[value].work_type:value;
},
/**
* @function 任务类型失焦事件
* @author ***
* @time 2020-08-17
**/
handleBlur(value) {
this.value=value;
this.model.workType = this.value;
},

效果图如下:

PS:模糊查询功能请自行完善

antd-vue的select组件实现既可以输入添加,又可以下拉选择的更多相关文章

  1. vue自定义select组件

    1.目的 看了很多element-ui的源码,决定自己实现一个简单的select组件,遇到的几个难点,便记录下来. 2.难点一 element-ui中的select组件通过v-model可以绑定数据, ...

  2. vue+element ui中select组件选择失效问题原因与解决方法

    codejing 2020-07-10 09:13:31  652  收藏 分类专栏: Web Vue Element UI 版权 .当表单form赋完值后,如果后续又对form中某一属性值进行操作如 ...

  3. Vue的iview组件框架select远程搜索,选中后不刷新的问题

    1.场景:弹框内有一个下拉组件(支持搜索),当选择完数据后弹框关闭,再次打开后,下拉框内的数据是刚才选中的数据.原因:分析后觉得是搜索内容没有清空,导致下拉的数据只有一个 2.解决方案 a .解决:调 ...

  4. vue.js之组件(上篇)

    本文的Demo和源代码已放到GitHub,如果您觉得本篇内容不错,请点个赞,或在GitHub上加个星星! https://github.com/zwl-jasmine95/Vue_test 以下所有知 ...

  5. 使用Ant Design的select组件时placeholder不生效/不起作用的解决办法

    先来说说使用Ant Design和Element-ui的感觉吧. 公司的项目开发中用的是vue+element-ui,使用了一通下来后,觉得element-ui虽然也有一些问题或坑,但这些小问题或坑凭 ...

  6. vue学习之组件

    组件从注册方式分为全局组件和局部组件. 从功能类型又可以分为偏视图表现的(presentational)和偏逻辑的(动态生成dom),推荐在前者中使用模板,在后者中使用 JSX 或渲染函数动态生成组件 ...

  7. vue常用UI组件

    Mint UI 项目主页:http://mint-ui.github.io/#!/zh-cn demo:http://elemefe.github.io/mint-ui/#/ github地址:htt ...

  8. VUE优秀的组件库总结

    VUE组件库 vux github ui demo:https://github.com/airyland/vux Mint UI 项目主页:http://mint-ui.github.io/#!/z ...

  9. 《转》vue 常用ui组件

    vux github ui demo:https://github.com/airyland/vux Mint UI 项目主页:http://mint-ui.github.io/#!/zh-cndem ...

随机推荐

  1. 题解 洛谷 P4899 【[IOI2018] werewolf 狼人】

    先考虑狼形,其只能走编号小于\(R\)的点.若将每条边赋边权为其两端点编号的较大值,然后按最小生成树的顺序构建\(Kruskal\)重构树. 那么从原图的一个点\(x\)在树上倍增,到达满足要求且深度 ...

  2. Vue nextTick 学习历程

    nextTick 详解 这是官网的解释,比较简洁精炼,反正我是第一遍什么都没看懂 在下次 DOM 更新循环结束之后执行延迟回调.在修改数据之后立即使用这个方法,获取更新后的 DOM. 经过我一步步测试 ...

  3. js用正则表达式查找中文

    var content = "awfjawf测试wfewef"; var ret = /\p{Unified_Ideograph}+/u.exec(content);

  4. GhostNet: More Features from Cheap Operations

    论文:GhostNet: More Features from Cheap Operations,CVPR 2020 代码:https://github.com/iamhankai/ghostnet. ...

  5. Elasticsearch及相关插件的安装

    Elasticsearch及相关插件的安装 1.安装Elasticsearch并启动服务 2.安装第三方插件 2.1.Head插件 是Elasticsearch的一个集群管理工具,可以通过它来查看和搜 ...

  6. XML--概念、约束、解析

    概念 XML:可扩展标记语言 HTML:超文本标记语言 两者的区别: 1.语法结构类似,单语法要求不同 HTML不区分大小写,XML严格区分大小写 在HTML中,有时不严格,如果上下文清楚地显示出段落 ...

  7. Csrf+Xss组合拳

    本文首发于“合天智汇”公众号,作者: 影子 各位大师傅,第一次在合天发文章,请多多关照 今年年初的疫情确实有点突然,打乱了上半年的所有计划(本来是校内大佬带我拿奖的时刻,没了 ,学长毕业了,就剩下我这 ...

  8. PHP parse_ini_file() 函数

    定义和用法 parse_ini_file() 函数解析一个配置文件(ini 文件),并以数组的形式返回其中的设置. 语法 parse_ini_file(file,process_sections) 参 ...

  9. PHP define() 函数

    实例 定义一个大小写敏感的常量: <?php define("GREETING","Hello you! How are you today?"); ec ...

  10. Echarts饼图绘制

    实现效果: html代码: <div id="chartBody1" style="width:120%;height:28vh;"> <di ...