// pages/menu/menu.js
Page({
data: {
menumessage: {},
menuindex: "a0",//索引的序号
isleft: 0,
isgoods: 0, //判断控制显示样式和满减的文字与价格
count: 0,
//这里将写组件相关的属性
iscpn: false,
translist: [], //单价:shopvalue,虚拟id:foods_id、总价:price、名字:name、数量:number
tempdiscount: 0
},
onLoad: function () {
const db = wx.cloud.database("")
db.collection('List').get().then(res => {
this.setData({ menumessage: res.data })
console.log("商品列表获取成功", res.data);
}, () => {
wx.showToast({
title: '数据请求错误',
icon: 'error',
duration: 500
})
})
},
orderJump(e) {
this.setData({
menuindex: 'a' + e.currentTarget.dataset.list,
isleft: e.currentTarget.dataset.list
})
},
increaseShop(e) {
var tempobj = {};
tempobj.name = this.data.menumessage[e.currentTarget.dataset.listfun].foods[e.currentTarget.dataset.foodsfun].specfoods[0].name;
tempobj.price = this.data.menumessage[e.currentTarget.dataset.listfun].foods[e.currentTarget.dataset.foodsfun].specfoods[0].price;//商品的总价格
tempobj.shopvalue = this.data.menumessage[e.currentTarget.dataset.listfun].foods[e.currentTarget.dataset.foodsfun].specfoods[0].price;//商品的单价
tempobj.foods_id = this.data.menumessage[e.currentTarget.dataset.listfun].foods[e.currentTarget.dataset.foodsfun].virtual_food_id;
tempobj.number = 1;
this.seekNum(tempobj)//这里进行一步相同商品的判断
this.setData({
isgoods: (this.data.menumessage[e.currentTarget.dataset.listfun].foods[e.currentTarget.dataset.foodsfun].specfoods[0].price + this.data.isgoods) //商品的价格
})
if (this.data.isgoods > 25 && this.data.tempdiscount === 0) { //是否优惠3元
this.setData({
count: this.data.count + 1, //购物车的图标
isgoods: (this.data.isgoods - 3),//商品的价格
tempdiscount: 1, //只享受一次优惠
//传给组件的商品数据
translist: this.data.translist
})
} else {
this.setData({
count: this.data.count + 1, //购物车的图标
//传给组件的商品数据
translist: this.data.translist
})
}
},
handleCpn() {
this.setData({
iscpn: !this.data.iscpn
})
},
handleDelete() {
this.setData({
count: 0,
isgoods: 0,
translist: [],
iscpn: false
})
},
handleReduce(event) {
this.pageReduce(event.detail.cpnreduceid)
},
handleAdd(event) {
this.pageAdd(event.detail.cpnaddid)
},
handleDefinite() {
wx.navigateTo({
url: '/pages/submit/submit'
})
},
//一些辅助函数,判断商品重复、去掉商品和添加商品
seekNum(obj) {
if (this.data.translist.length !== 0) {
const translength = this.data.translist.length;
for (let i = 0; i < translength; ++i) {
if (this.data.translist[i].foods_id === obj.foods_id) {
this.data.translist[i].price += obj.price;
++this.data.translist[i].number
return
} else {
if (i === translength - 1)
this.data.translist.push(obj)
}
}
} else {
this.data.translist.push(obj)
}
},
pageReduce(tempreduceid) {
const templength = this.data.translist.length;
for (let j = 0; j < templength; j++) {
if (this.data.translist[j].foods_id === tempreduceid) {
--this.data.translist[j].number
this.data.translist[j].price -= this.data.translist[j].shopvalue
const tempvalue = this.data.translist[j].shopvalue; //取出来要删除的商品的单价
if (this.data.translist[j].number === 0) {
//删除数组中的数据
this.cancleArray(j)
this.setData({
translist: this.data.translist,
count: this.data.count - 1,
isgoods: this.data.isgoods - tempvalue
})
if (this.data.translist.length === 0) {
this.setData({
iscpn: !this.data.iscpn
})
}
} else {
this.setData({
translist: this.data.translist,
count: this.data.count - 1,
isgoods: this.data.isgoods - tempvalue
})
}
return
}
}
},
pageAdd(tempaddid) {
const templength = this.data.translist.length;
for (let m = 0; m < templength; m++) {
if (this.data.translist[m].foods_id === tempaddid) {
++this.data.translist[m].number
this.data.translist[m].price += this.data.translist[m].shopvalue
this.setData({
translist: this.data.translist,
count: this.data.count + 1,
isgoods: this.data.isgoods + this.data.translist[m].shopvalue
})
return
}
}
},
cancleArray(n) {
//删除translist数组中第n项的数据
if (n === 0) {
this.data.translist.shift()
} else { //数组进行向后的排序,删除最后一个元素。不考虑性能的情况下
for (let p = n + 1; p < this.data.translist.length; p++) {
temparray = this.data.translist[n];
this.data.translist[n] = this.data.translist[p];
this.data.translist[p] = temparray;
}
this.data.translist.pop()
}
}
})
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
微信小程序—满分食堂点餐小程序源码,此项目为满分食堂点餐微信小程序。 微信小程序—满分食堂点餐小程序源码,此项目为满分食堂点餐微信小程序。 微信小程序—满分食堂点餐小程序源码,此项目为满分食堂点餐微信小程序。 微信小程序—满分食堂点餐小程序源码,此项目为满分食堂点餐微信小程序。 微信小程序—满分食堂点餐小程序源码,此项目为满分食堂点餐微信小程序。 微信小程序—满分食堂点餐小程序源码,此项目为满分食堂点餐微信小程序。 微信小程序—满分食堂点餐小程序源码,此项目为满分食堂点餐微信小程序。 微信小程序—满分食堂点餐小程序源码,此项目为满分食堂点餐微信小程序。 微信小程序—满分食堂点餐小程序源码,此项目为满分食堂点餐微信小程序。 微信小程序—满分食堂点餐小程序源码,此项目为满分食堂点餐微信小程序。
资源推荐
资源详情
资源评论
收起资源包目录
微信小程序—满分食堂点餐小程序源码.zip (131个子文件)
uploadCloudFunction.bat 176B
.gitignore 144B
menu.js 5KB
search.js 2KB
index.js 2KB
order.js 2KB
register.js 2KB
personal.js 2KB
login.js 2KB
me.js 2KB
map.js 2KB
index.js 1KB
submit.js 1KB
index.js 915B
index.js 713B
index.js 637B
app.js 631B
.eslintrc.js 587B
index.js 497B
my-shop.js 484B
index.js 394B
index.js 348B
index.js 291B
my-detail.js 189B
envList.js 134B
project.config.json 2KB
project.private.config.json 2KB
app.json 1KB
package.json 270B
sitemap.json 195B
login.json 131B
menu.json 123B
submit.json 123B
order.json 116B
map.json 71B
register.json 71B
config.json 69B
me.json 65B
search.json 65B
my-detail.json 48B
index.json 48B
index.json 27B
personal.json 27B
my-shop.json 23B
debug.json 17B
LICENSE 11KB
我的1.png 8KB
我的.png 7KB
012.png 5KB
030.png 5KB
017.png 5KB
025.png 5KB
026.png 5KB
008.png 5KB
028].png 5KB
005.png 5KB
支付宝支付.png 5KB
29.png 5KB
034.png 5KB
044.png 5KB
040.png 5KB
011.png 5KB
010.png 5KB
023.png 5KB
043.png 5KB
002.png 5KB
022.png 5KB
037.png 5KB
020.png 5KB
041.png 5KB
045.png 5KB
004.png 5KB
024.png 5KB
013.png 5KB
031.png 5KB
055.png 5KB
042.png 5KB
019.png 5KB
009.png 5KB
038.png 5KB
001.png 5KB
053.png 5KB
015.png 5KB
056.png 5KB
006.png 5KB
014.png 5KB
007.png 5KB
035.png 5KB
039.png 5KB
003.png 5KB
033.png 5KB
021.png 5KB
016.png 5KB
027.png 5KB
018.png 4KB
036.png 4KB
微信支付.png 4KB
054.png 4KB
首页1.png 4KB
首页.png 4KB
共 131 条
- 1
- 2
程序员张小妍
- 粉丝: 1w+
- 资源: 2788
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页