### 项目初览
> 仿造盒马鲜生,实现了部分功能。<br>
盒马鲜生是阿里巴巴对线下超市完全重构的新零售业态,热度十分
![](https://user-gold-cdn.xitu.io/2017/12/1/1601101dde0a0185?w=343&h=631&f=gif&s=2404841)
![](https://user-gold-cdn.xitu.io/2017/12/1/1600fe4fd66b3587?w=237&h=420&f=png&s=117741)
![](https://user-gold-cdn.xitu.io/2017/12/1/16011022ca8663da?w=343&h=631&f=gif&s=589002)
![](https://user-gold-cdn.xitu.io/2017/12/1/16011026998ea9e9?w=365&h=640&f=gif&s=1556064)
![](https://user-gold-cdn.xitu.io/2017/12/1/16010029fe869d94?w=263&h=460&f=png&s=37249)
#### 项目功能
* 用户信息注册
* 首页几个轮播和界面交互
* 分类商品管理购买
* 购物车界面交互及其操作
* 个人信息界面
## 小程序设计过程
小程序是一个易上手的东西, 对于新手来说,多看官方文档,可以初步做出比较完整的小程序,正是因为简单上手,功能实现简单,小程序是越来越火,商业价值也越来越大。
#### 1.项目工具和文档
1. 微信web开发者工具:[微信小程序官网](https://mp.weixin.qq.com/debug/wxadoc/dev/) 这是个比较好用的编辑器,对于小程序编辑很方便。
2. 开发文档:[微信小程序宝典秘籍](https://www.w3cschool.cn/weixinapp/9wou1q8j.html) 通过这个查找微信小程序的API,组件,框架等等。
3. 图标库: [Iconfont-阿里巴巴矢量图标库](http://www.iconfont.cn/) 这个可以找到自己想要的几乎所有的小图标,十分方便。
4. Easy Mork: [easy-mock](www.easy-mock.com) 用于后台的模拟,得到JSON数据;
5. weui框架引入, 例如个人信息界面,用weui可以很快很方便的做
#### 2.项目开发
微信小程序开发和传统的H5开发还是有些不同的, 容易踩坑。
小程序是基于MVVM的的框架,合理利用数据绑定实现界面的更新是很关键的
开发时不要一股脑的写写写,多看看文档,你会发现你不小心原生写了个组件。。
#### 3.项目发布
进入开发平台,注册项目信息->在编辑器中上传版本->在开发版本中选择提交审核->审核通过->项目上线
## 部分功能解析
先看看我的项目目录
```
"pages": [
"pages/index/index", //主界面
"pages/person/person", //个人界面
"pages/classify/classify", //分类商品界面
"pages/class/myFruits/myFruits", //水果商店
"pages/class/myMeat/myMeat", //肉类食品商店
"pages/myCart/myCart" //购物车
],
```
### 1.首页轮播图
轮播有几种形式, 比如常见的横向海报图片展示, 还有横纵向商品列表展示,头条信息框轮换
siwper组件很好的实现了横向海报图片展示,比如
```
<swiper indicator-dots="{{indicatorDots}}" autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}">
<block wx:for="{{imgUrls}}" wx:key="index">
<swiper-item>
<image src="{{item}}" class="slide-image" />
</swiper-item>
</block>
</swiper>
```
然而横向滑动需要注意些别的细节
首先要给swiper组件加上scroll-x-="true"
然后给轮播的子元素父容器设置display: inline-block; white-space: nowrap;
头条信息框转换采用上下轮换, 使用scroll-view嵌套swiper完成
```
<scroll-view scroll-y-="true" >
<swiper autoplay="{{autoplay}}" interval="{{interval1}}" duration="{{duration}}" vertical="true">
<block wx:for="{{something}}" wx:key="index">
//内容
</block>
</swiper>
</scroll-view>
```
### 2.分类商品管理
首先在index界面通过onLoad生命周期函数 ,
通过easy-moc获取后台数据,将必要的信息送给全局的globalData
```
wx.request({
url: 'http://www.easy-mock.com/mock/5a1ffb42583969285ab22bb7/orderOnline/orderOnline',
complete: res => {
this.globalData.classifyList = res.data;
},
})
```
对于数据处理,需要理清哪些是全局信息, 哪些是局部信息
比如所有商品的信息,购物车里的商品,就得放到全局中 ,而有些比如当前界面的状态,一般放到当前界面的Data里面保存
而有些个人信息,比如出生年月,账号信息 则可以通过wx.setStorage 和wx.getStorage放入本地存储
### 3.购物车操作
购物车中的操作无非是些加加减减,需要自己不断调试,找出哪里不合常理
通过view,button里的bindtap等操作,实现对商品信息的修改,购物车状态的处理
举个例子 减少购物车中的商品的数量操作
```
reduceItems: function (e) {
let carts = app.globalData.carts; //获取购物车的信息
let classifyList = app.globalData.classifyList; //获取商品的信息
for (let key of carts) { //遍历购物车数组
if (key.id === e.target.dataset.id) { //通过WXML中 view里面的bind-id传过来的参数进行查找
key.cartSelected = true;
if (key.num === 1) { //如果数量为1还要减
key.num--;
key.cartSelected = false; //购物车不选中
key.selected = false; //商品中不选中
app.globalData.carts = carts.filter((item) => { //进行购物车中商品剔除
return item.id != e.target.dataset.id;
})
} else {
key.num--;
}
}
}
let num = 0; //实时更新购物车小计界面显示
let totalPrice = 0;
for (let key of carts) {
if (key.cartSelected) {
num += key.num;
totalPrice += key.num * key.price;
}
}
this.setData({ //通过setData进行当前页面Data数据管理
cart: app.globalData.carts,
cartTotal: num,
cartTotalPrice: totalPrice,
})
},
```
### 4.weui框架引入
**在全局CSS样式中 添加的CSS适配于所有的页面,由此可以引入weui ,做一些界面真的很方便**
```
@import './styles/weui.wxss';
```
## 总结
1. 微信小程序的组件,API很强大,需要不断的探索,不断的学习,多看文档
2. 善于利用有效资源, 比如iconfont esay-moc weui等
3. 切页面要细心,善于利用弹性布局等布局方法,小程序的rpx确实很好用
4. 不要一股脑的写代码, 当函数具有复用性,应该抽象出来,封装好,这样代码才易于维护,易读
### 项目地址:
https://github.com/fishman17/wx_orderOnline 内含详细注释
### 个人简介
github : https://github.com/fishman17
邮箱 : 734583898@qq.com
**最后 如果您喜欢这个项目的话,给个star哦 谢谢!**
没有合适的资源?快使用搜索试试~ 我知道了~
(21688012)微信商城小程序
共130个文件
wxss:57个
png:43个
js:9个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 5 浏览量
2024-12-24
09:39:31
上传
评论
收藏 261KB ZIP 举报
温馨提示
微信商城小程序是一种基于微信平台开发的应用,旨在提供无缝的在线购物体验,特别是在移动设备上。这类小程序利用微信的庞大用户基础,为商家提供一个无需独立应用程序即可开展电子商务的平台。微信商城小程序通常包括商品浏览、选购、支付、订单管理、客户服务等功能,能够提升用户的购物便利性,帮助商家留住客流量。 在提供的文件列表中,我们看到了几个关键文件,它们对于构建微信商城小程序至关重要: 1. **app.js**:这是小程序的主应用脚本文件,它定义了全局的配置和行为。在这里,开发者可以注册全局函数,初始化数据,处理生命周期事件,以及设置页面路由等。 2. **app.json**:这是小程序的配置文件,用于定义小程序的整体结构和配置信息。例如,它包含了页面路径、窗口表现、网络超时设置、导航栏样式等。这个文件对整个小程序的外观和行为有着重要影响。 3. **README.md**:这是一个Markdown格式的文档,通常用来提供关于项目的基本信息、安装指南、使用方法或开发者注意事项。对于开源项目来说,这个文件是理解和使用源代码的重要参考。 4. **源码库.url、精品免费商业源码下载.url、素
资源推荐
资源详情
资源评论
收起资源包目录
(21688012)微信商城小程序 (130个子文件)
myCart.js 5KB
index.js 4KB
person.js 4KB
myFruits.js 4KB
myMeat.js 4KB
classify.js 2KB
app.js 2KB
list.js 861B
base64.js 433B
app.json 1KB
myFruits.json 49B
person.json 49B
myMeat.json 48B
myCart.json 45B
classify.json 42B
index.json 2B
list.json 2B
README.md 7KB
landscape.png 16KB
toutiao.png 8KB
hemalogo-active.png 7KB
waitcompent.png 7KB
hemalogo.png 7KB
shezhi.png 7KB
kefu.png 6KB
myicon-active.png 6KB
class-active.png 6KB
mendian.png 5KB
myicon.png 5KB
wangpai.png 5KB
gotoyourhome.png 5KB
class.png 5KB
cart-active.png 5KB
cart.png 5KB
welfare.png 5KB
right.png 4KB
friend.png 4KB
pingjia.png 4KB
dianziquan.png 4KB
lipinka.png 4KB
coupon.png 4KB
waitpay.png 4KB
waitpublish.png 3KB
yinhangka.png 3KB
allorder.png 3KB
duihuan.png 3KB
face.png 2KB
place.png 1KB
add.png 1KB
face-active.png 1KB
place-active.png 868B
pin.png 807B
add-active.png 766B
home.png 671B
io.png 666B
event.png 583B
web.png 559B
home-active.png 356B
event-active.png 320B
web-active.png 305B
io-active.png 302B
说明.txt 7B
源码库.url 149B
精品免费商业源码下载.url 149B
素材库.url 112B
★★精品过期已备案域名,即买即用★★.url 110B
index.wxml 5KB
person.wxml 3KB
myCart.wxml 2KB
myFruits.wxml 2KB
myMeat.wxml 2KB
list.wxml 720B
classify.wxml 620B
weui.wxss 18KB
index.wxss 5KB
weui-loading.wxss 4KB
weui-form.wxss 3KB
myCart.wxss 3KB
myMeat.wxss 3KB
myFruits.wxss 3KB
person.wxss 2KB
weui-form-preview.wxss 2KB
weui-uploader.wxss 1KB
weui-media-box.wxss 1KB
list.wxss 1KB
weui-animate.wxss 1KB
weui-cell.wxss 1KB
weui-searchbar.wxss 1KB
weui-tab.wxss 987B
weui-navbar.wxss 842B
weui-select.wxss 722B
weui-loadmore.wxss 689B
weui-form_common.wxss 688B
weui-panel.wxss 655B
weui-access.wxss 646B
weui-footer.wxss 638B
weui-grid.wxss 613B
weui-msg.wxss 599B
weui-agree.wxss 513B
classify.wxss 442B
共 130 条
- 1
- 2
资源评论
abments
- 粉丝: 2174
- 资源: 1644
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于mosquitto的android mqtt客户端详细文档+全部资料.zip
- 基于mqtt的消息推送系统,单点推送,分组推送详细文档+全部资料.zip
- 基于MQTT的聊天系统演示详细文档+全部资料.zip
- 基于mqtt的遥控器,在app上点击按钮,将码(空调码,电视码,风扇码)发送到mqqt,mqtt通过WiFi发给esp8266,esp8266解析转为红外,发出
- 基于Mqtt实现的简单推送服务的服务端详细文档+全部资料.zip
- 基于mqtt实现的即时通讯IM服务详细文档+全部资料.zip
- 基于mqtt开发sdk源码详细文档+全部资料.zip
- 基于MQTT实现的局域网通讯,模仿微信详细文档+全部资料.zip
- 最简单优雅的SQL操作类库
- 基于MQTT物联网用户终端程序详细文档+全部资料.zip
- 基于MQTT协议,物联网云平台的智慧路灯管理系统,在PC机上进行项目软件的Web开发,采集端的数据采用MQTT.fx进行模拟,数据通过MQTT协议进行传输到服务
- 基于MQTT协议的一个即时通讯安卓APP详细文档+全部资料.zip
- 基于MQTT协议的底层通讯SDK详细文档+全部资料.zip
- 基于MQTT协议的物联网健康监测系统详细文档+全部资料.zip
- 基于netty, spring boot, redis等开源项目实现的物联网框架, 支持tcp, udp底层协议和http, mqtt, modbus等上层协议
- 基于MQTT协议实现消息的即时推送Android开发详细文档+全部资料.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功