uni-app 模糊搜索下拉多选框插件需求

发布于 1周前 作者 sinazl 来自 Uni-App

uni-app 模糊搜索下拉多选框插件需求

下拉框可输入进行模糊搜索,也可以进行多选

3 回复

用原生可以开发,但是必须要nvue界面才能使用,nvue布局这些限制挺大的,我们群里有一个前端实现的半成品 您可以进群看看,后续自行改造 智密科技承接安卓/IOS双端插件开发、安卓/IOS App外包开发、项目整体外包、各类硬件产品开发
我们的优势: 1、全职UI、前端、安卓、IOS、后端、硬件工程师,每个岗位都是专职开发更专业,选择智密您就拥有了一个完整的技术支持团队; 2、定制的产品无论是插件、APP、整套系统,一年内免费Bug修复; 3、定制的APP和整体项目软件著作权归客户所有,并协助软件著作权申请; 4、软件开发源头工厂,定价合理,与开发人员直接沟通,避免需求理解问题,提高开发效率; 5、软件均为自主开发,不基于网上代码进行二次开发,保障系统安全性; 6、软件源码自己开发,出现BUG能快速修复,新需求能快速实现; 7、签订开发合同,通过条款约定双方权利义务,服务和售后有保障; 8、我们的插件尽可能做到让用户UI自定义,用户改变UI之后无需联系我们修改插件,只要前端调整UI即可。
我们唯一的劣势:价格可能会比别人高 我们不提供廉价的插件和服务,服务和收费是成正比的。 我们的插件定价基本都在千元以上,插件使用成本=插件购买费用+插件集成成本+插件填坑成本+后续更新成本 在没有好的技术支持前提下,后面三项成本将远远大于插件购买费用,选择智密科技,实现双赢
经过几年积累,已拥有大量双端插件,常见功能的插件几乎都能直接试用,欢迎各位进群了解
插件沟通交流群:755910061(欢迎进群了解我们的技术支持方式及我们的技术能力) 商务QQ:57570616(这是传说中的搅屎棍,光动嘴皮子不干活的,进群最实在) 商务微信:ZhimiTec(同上…)


公司承接项目外包开发、双端(Android,iOS)原生插件开发。
为什么选择我们: 1、1000 项目开发积累,数百种商业模式开发经验,更懂您的需求,沟通无障碍。 2、一年免费技术保障,系统故障或被攻击,2小时快速响应提供解决方案落地。 3、软件开发源码定制工厂,去中间商降低成本,提高软件开发需求沟通效率。 4、纯原生开发,拒绝模板和封装系统,随时更新迭代,增加功能,无需重做系统。 5、APP定制包办软件著作权申请,30天内保证拿到软著证书,知识产权受保护。 6、中软云科技导入严谨的项目管理系统,确保项目准时交付,快速抢占市场商机。 7、软件开发费、维护费、第三方各种费用公开透明,不花冤枉钱,不玩套路。
已有大量双端插件、App、小程序、公众号、PC、移动端、游戏等案例。
行业开发经验:银行、医疗、直播、电商、教育、旅游、餐饮、分销、微商、物联网、零售等
商务QQ:1559653449 商务微信:fan-rising
7x24小时在线,欢迎咨询了解

针对您提出的uni-app中实现模糊搜索下拉多选框插件的需求,以下是一个简化的代码示例,展示了如何实现这一功能。此示例主要使用了uni-app的基础组件和JavaScript逻辑。

首先,确保您的uni-app项目中已经安装并配置好了必要的依赖。接下来,您可以在页面的.vue文件中实现以下代码:

<template>
  <view class="container">
    <input
      type="text"
      v-model="searchQuery"
      placeholder="请输入搜索内容"
      @input="onSearchInput"
    />
    <view v-if="filteredOptions.length > 0" class="dropdown">
      <checkbox-group @change="onCheckboxChange">
        <label v-for="option in filteredOptions" :key="option.value">
          <checkbox :value="option.value">{{ option.label }}</checkbox>
        </label>
      </checkbox-group>
    </view>
  </view>
</template>

<script>
export default {
  data() {
    return {
      searchQuery: '',
      options: [
        { label: 'Apple', value: 'apple' },
        { label: 'Banana', value: 'banana' },
        { label: 'Cherry', value: 'cherry' },
        // 更多选项...
      ],
      selectedValues: [],
    };
  },
  computed: {
    filteredOptions() {
      if (!this.searchQuery) return this.options;
      const query = this.searchQuery.toLowerCase();
      return this.options.filter(option =>
        option.label.toLowerCase().includes(query)
      );
    },
  },
  methods: {
    onSearchInput() {
      // 自动触发下拉显示逻辑(这里省略具体实现,可根据需求添加)
    },
    onCheckboxChange(e) {
      this.selectedValues = e.detail.value;
      console.log('Selected Values:', this.selectedValues);
    },
  },
};
</script>

<style>
.container {
  padding: 16px;
}
.dropdown {
  margin-top: 8px;
  max-height: 200px;
  overflow-y: auto;
  border: 1px solid #ddd;
  background-color: #fff;
}
</style>

在这个示例中:

  1. 使用<input>组件接收用户输入,并绑定到searchQuery数据属性。
  2. 通过计算属性filteredOptions根据用户输入动态过滤选项列表。
  3. 使用<checkbox-group><checkbox>组件实现多选框功能,并绑定到selectedValues数组以记录选中的值。
  4. 样式部分简单设置了容器和下拉列表的样式。

请注意,此示例未包含具体的下拉显示/隐藏逻辑以及样式优化,这些部分您可以根据实际需求进一步实现和调整。希望这个示例能为您的uni-app项目提供一个良好的起点。

回到顶部