| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 |
- const api = require('../../config/api')
- const util = require('../../utils/util')
- const check = require('../../utils/check')
- let app = getApp()
- Page({
- data: {
- show: false,
- nickname: "",
- mobile: "",
- banner: [],
- channel: [],
-
- categoryId: -2, // 底部商品分类id
- category: [
- { id: -2, name: '推荐' },
- { id: -1, name: '新品' }
- ],
- floorGoods: [],
- page: 1,
- totalPages: 1
- },
-
- onLoad() {
- const token = wx.getStorageSync('token'), userInfo = wx.getStorageSync('userInfo')
- if (token && userInfo && (!userInfo.mobile || userInfo.mobile.length != 11)) this.setData({ show: true })
- this.getIndexData()
- },
- onPullDownRefresh() {
- this.getIndexData()
- wx.stopPullDownRefresh()
- },
- onReachBottom() {
- if (this.data.totalPages > this.data.page) {
- this.setData({ page: this.data.page + 1 })
- this.getfloorGoods()
- }
- },
- getIndexData() {
- util.showLoad('加载中')
- util.request(api.IndexUrl).then(res => {
- util.hideLoad()
- if (res.errno === 0) {
- res.data.floorGoodsList.forEach(g => g.picUrl = g.picUrl.split(','))
- this.setData({
- banner: res.data.banner,
- floorGoods: res.data.floorGoodsList,
- totalPages: res.data.totalPages
- })
- if (res.data.channel && res.data.channel.length) this.setData({ channel: res.data.channel.splice(0, 8) })
- } else util.showErrorToast(res.errmsg)
- }).catch(() => {
- util.hideLoad()
- util.showErrorToast('网络连接失败')
- })
- },
- // 获取底部 分类商品
- getfloorGoods(e) {
- const { page, categoryId } = this.data
- util.showLoad('加载中')
- util.request(api.GetfloorGoods, { page, categoryId }).then(res => {
- util.hideLoad()
- if (res.errno === 0) {
- res.data.goodsList.forEach(g => g.picUrl = g.picUrl.split(','))
- const floorGoods = e ? res.data.goodsList : this.data.floorGoods.concat(res.data.goodsList)
- this.setData({ totalPages: res.data.totalPages, floorGoods })
- } else util.showErrorToast(res.errmsg)
- }).catch(() => {
- util.hideLoad()
- util.showErrorToast('网络连接失败')
- })
- },
- // 切换底部分类
- changeCategory({ currentTarget }) {
- const { id } = currentTarget.dataset
- this.setData({ categoryId: id, page: 1 })
- this.getfloorGoods('reset')
- },
-
- toCatelog({ currentTarget }) {
- const { id } = currentTarget.dataset
- app.globalData.menuId = id
- wx.switchTab({ url: '/pages/catalog/catalog' })
- },
- // 商品详情
- toDetail({ currentTarget }) {
- const { item } = currentTarget.dataset
- wx.navigateTo({ url: `/packageGoods/detail/detail?obj=${JSON.stringify({ id: item.id })}` })
- },
- hidePopup() {
- this.setData({ show: false, nickname: "", mobile: "" })
- },
- nameInput({ detail }) {
- this.setData({ nickname: detail })
- },
- mobileInput({ detail }) {
- this.setData({ mobile: detail })
- },
- updateUser() {
- const { nickname, mobile } = this.data
- const { id } = wx.getStorageSync('userInfo')
- if (!check.validNickName(nickname)) return util.showToast('请输入2-10个字符')
- if (!check.validPhone(mobile)) return util.showToast('请输入正确手机号')
-
- util.showLoad('加载中')
- util.request(api.UserUpdate, { id, nickname, mobile }, 'POST').then(res => {
- util.hideLoad()
- if (res.errno === 0) {
- wx.setStorageSync('userInfo', { ...wx.getStorageSync('userInfo'), nickname, mobile })
- this.hidePopup()
- } else util.showErrorToast(res.errmsg)
- }).catch(() => {
- util.hideLoad()
- util.showErrorToast('网络连接失败')
- })
- },
-
- onShareAppMessage() {}
- })
|