云开发(微信-小程序)笔记(十二)---- 搜索

简介: 云开发(微信-小程序)笔记(十二)---- 搜索

云开发(微信-小程序)笔记(十一)---- 分页,不简单啊

搜索的分类有单字段,多字段(或),多字段(并)搜索等

1.导入数据集

首先向数据库导入免费数据集,这个数据集自己写也行,在导入云数据库即可。

2.单字段搜索

主要部分(js部分)

let db = wx.cloud.database()
let _ = db.command
Page({
  onLoad() {
    db.collection('news')
      单字段模糊搜索
       .where({
         title: db.RegExp({    //title是你要搜索的字段,可以是其他
           regexp: '你好', //匹配内容(title里)
           options: 'i',  //不区分大小写
         })
       })
       .get()
      .then(res => {
        console.log('搜索成功', res)
      })
      .catch(res => {
        console.log('搜索失败', res)
      })
  }
})

3.多字段(or)搜索

主要部分(js部分)

let db = wx.cloud.database()
let _ = db.command
Page({
  onLoad() {
    db.collection('news')
    //多字段模糊搜索(满足任意一个条件)
      .where(_.or([{ //搜索标题字段
          title: db.RegExp({
            regexp: '丽江',
            options: 'i',
          })
        },
          { //搜索描述字段
            desc: db.RegExp({
              regexp: '丽江',
              options: 'i',
            }),
          }
        ]))
        .get()
      .then(res => {
        console.log('搜索成功', res)
      })
      .catch(res => {
        console.log('搜索失败', res)
      })
     }
}

4.多字段(and)搜索

主要部分(js部分)

let db = wx.cloud.database()
let _ = db.command
Page({
  onLoad() {
    db.collection('news')
      //多字段模糊搜索(满足任意全部条件)
      .where(_.and([{ //搜索标题字段
          title: db.RegExp({
            regexp: '小米',
            options: 'i',
          })
        },
        { //搜索描述字段
          desc: db.RegExp({
            regexp: '小米',
            options: 'i',
          }),
        }
      ]))
      .get()
      .then(res => {
        console.log('搜索成功', res)
      })
      .catch(res => {
        console.log('搜索失败', res)
      })
  }
})

5.案例

1.编写js部分

// pages/seach-list/seach-list.js
let db = wx.cloud.database()
let _ = db.command
Page({
  data: {
    key: null
  },
  getKey(e){
    this.setData({
      key: e.detail.value
    })
  },
  getSearch() {
    console.log(this.data.key)
    let key = this.data.key
    if (key){
      console.log('可以执行搜索!')
    db.collection('news')
      .where(_.or([{ //搜索标题字段
          title: db.RegExp({
            regexp: key,
            options: 'i',
          })
        },
        { //搜索描述字段
          desc: db.RegExp({
            regexp: key,
            options: 'i',
          }),
        }
      ]))
      .get()
      .then(res => {
        console.log('搜索成功', res)
        this.setData({
          list: res.data
        })
      })
    } else{
      wx.showToast({
        icon: 'error',
        title: '请输入内容',
      })
      }
  }

2.编写wxml部分

<!--pages/seach-list/seach-list.wxml-->
<view class="root">
  <input placeholder="请输入要搜索的词" bindinput="getKey"></input>
  <view bindtap="getSearch">搜索</view>
</view>
<view wx:if="{{list && list.length>0}}">
  搜索结果如下
  <view wx:for="{{list}}" wx:key="index">
    <view class="item">
      <view>标题:{{item.title}}</view>
      <view>描述:{{item.desc}}</view>
    </view>
  </view>
</view>
<view wx:if="{{list && list.length == 0}}">
  搜索内容为空
</view>

3.编写wxss部分

/* pages/seach-list/seach-list.wxss */
.root{
  display: flex;
}
input{
   flex: 1; /*搜索框撑满页面*/
  border: 1px solid gray;/*搜索框的颜色*/
  border-radius: 30rpx;/*搜索框的边角圆润度*/
  margin-right: 30rpx; /*搜索框距离右侧的距离*/
  padding-left: 20rpx; /*搜索框中的提示词距左侧的距离*/
}
.item{
  color:rgb(83, 81, 185); /*颜色*/
  margin: 20rpx; /*距离上的距离*/
  border-bottom: 1px solid gray; /*底部边框*/
}

云开发(微信-小程序)笔记(十三)---- 注册登陆

感谢大家,点赞,收藏,关注,评论!

目录
相关文章
|
7天前
|
小程序 Android开发
|
2天前
|
小程序
|
3天前
|
小程序 数据安全/隐私保护
|
8天前
|
小程序
|
8天前
|
人工智能 小程序
【一步步开发AI运动小程序】五、帧图像人体识别
随着AI技术的发展,阿里体育等公司推出的AI运动APP,如“乐动力”和“天天跳绳”,使云上运动会、线上健身等概念广受欢迎。本文将引导您从零开始开发一个AI运动小程序,使用“云智AI运动识别小程序插件”。文章分为四部分:初始化人体识别功能、调用人体识别功能、人体识别结果处理以及识别结果旋转矫正。下篇将继续介绍人体骨骼图绘制。
|
8天前
|
人工智能 小程序 vr&ar
AI运动小程序开发常见问题集锦二
截至当前,我们的AI运动识别小程序插件已迭代至第23个版本,广泛应用于健身、体育、体测、AR互动等场景。本文针对近期用户咨询,汇总了常见问题,帮助用户减少开发成本,提高效率。主要涵盖计时与计数模式的区别、综合排行榜生成方法、全屏模式适配及无开发能力用户的解决方案。
|
8天前
|
小程序 数据挖掘 UED
开发1个上门家政小程序APP系统,都有哪些功能?
在快节奏的现代生活中,家政服务已成为许多家庭的必需品。针对传统家政服务存在的问题,如服务质量不稳定、价格不透明等,我们历时两年开发了一套全新的上门家政系统。该系统通过完善信用体系、提供奖励机制、优化复购体验、多渠道推广和多样化盈利模式,解决了私单、复购、推广和盈利四大痛点,全面提升了服务质量和用户体验,旨在成为家政行业的领导者。
|
9天前
|
缓存 JSON 小程序
|
2天前
|
小程序
|
6天前
|
小程序

热门文章

最新文章