小程序搜索功能

108 阅读1分钟

1、menu.js

const {menuHttp}=require('../../http/api')

Page({

  data: {

    categories:[],

    itemList:[]

  },

  init(){

    menuHttp({})

    .then(res=>{

      let{categories}=res

      // console.log(categories);

      categories.forEach(r=>{

        r.flag=false

      })

      categories[0].flag=true

      categories[0].children.forEach(r=>{

        r.cover_url="oss.shop.eduwork.cn/product/202…",

        r.title=r.name,

        r.description="书籍是人类进步的阶梯书籍是人类进步的阶梯"

      })

      this.setData({

        categories,

        itemList:categories[0].children

      })

    })

  },

  choose:function(e){

    console.log(e);

    let{currentTarget:{dataset:{i}}}=e

    this.data.categories.forEach(r=>{

      r.flag=false

    })

    this.data.categories[i].flag=true

    this.data.categories[i].children.forEach(r=>{

      r.cover_url="oss.shop.eduwork.cn/product/202…"

      r.title=r.name;

      r.description="书籍是人类进步的阶梯书籍是人类进步的阶梯"

    })

    this.setData({

      categories:this.data.categories,

      itemList:this.data.categories[i].children

    })

  },

  /**

   * 生命周期函数--监听页面加载

   */

  onLoad: function (options) {

    this.init()

  },

})

2、search.js

const {goodsHttp}=require('../../http/api')

import Toast from '../../miniprogram_npm/@vant/weapp/toast/toast';

Page({

  data: {

    value: '',

    itemList:[],

    page:1,

    kong:false

  },

  init(){

    goodsHttp({title:this.data.value,page:this.data.page})

    .then(res=>{

      // console.log(res);

      let{goods:{data}}=res

      data.forEach(r=>{

        r.description='书籍是人类进步的电梯书籍是人类进步的电梯书籍是人类进步的电梯'

      })

      if(this.data.page==1){

        this.data.itemList=[]

      }

      console.log(data);

      this.setData({

        itemList:[...this.data.itemList,...data]

      })

      if(!data.length){

        this.setData({kong:true})

      }else{

        this.setData({kong:false})

      }

    })

    Toast.clear()

  },

  onLoad: function (options) {

    this.init()

  },

  onChange(e) {

    this.setData({

      value: e.detail,

    });

  },

  onSearch() {

    console.log('搜索' + this.data.value);

    this.data.page=1

    this.init()

  },

  onCancel() {

    console.log('取消' + this.data.value);

    this.data.value=''

    this.data.page=1

    this.init()

  },

  onReachBottom: function () {

    this.data.page++;

    Toast.loading({

      message: '加载中...',

      forbidClick: true,

    });

    this.init()

  },

});



作者:Esther_12e7
链接:www.jianshu.com/p/982405f76… 来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。