uniapp 使用uni-combox组合框实现远程搜索功能

一、绑定属性

<uni-combox :candidates="candidates" placeholder="请选择序列名称(支持搜索)" @input="change"
					v-model="form.materialName" @blur="onblur">
</uni-combox>
  1. candidates 属性列表
  2. @input 组合框输入事件
  3. @blur 组合框失焦事件
    @blur事件在官方文档中不存在,需自行修改uni-combox组件
    在这里插入图片描述

二、js方法

data() {
			return {
			    //原列表
				typeList: [],
				//处理后的列表
				candidates: [],
				form: {
					materialName: "",
					materialIndex: 0,
					materialId: "",
					proMaterialContent: ""
				},
				query: {
					pageSize: 10,
					pageNum: 1,
					materialName: ''
				},
			}
		},
methods: {
	       //获取后台数据
			getTypeList() {
				this.candidates = []
				getTypeList(this.query).then(res => {
					if (res.code == 200) {
						
						this.typeList = res.rows
						if (res.rows.length > 0) {
							res.rows.forEach(item => {
								this.candidates.push(item.materialName)
							})
						}
					}
				})
			},
			onblur(e) {
				if (this.form.materialId == "") {
					this.form.materialName = ""
					this.query.materialName = ""
				}

			},
			change(e) {
				let flag = this.typeList.find(item => {
					return item.materialName == e
				})
				if (flag) {
					this.form.materialId = flag.id
				} else {
					this.form.materialId = ""
					this.query.materialName = e
					this.getTypeList()
				}


			},
 }
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值