👨💻个人主页:@开发者-曼亿点
👨💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!
👨💻 本文由 曼亿点 原创
👨💻 收录于专栏:微信小程序开发
⭐🅰⭐
—
文章目录
⭐前言⭐
在这个数字化飞速发展的时代,购物方式也在不断变革与创新。微信小程序商城应运而生,为您打造一个全新的购物体验。
我们深知,您的时间宝贵,每一分每一秒都应花在有价值的事情上。因此,我们精心构建了这个便捷、高效的微信小程序商城,让您无需繁琐的下载和安装,轻轻一点,即可开启精彩的购物之旅。
在这里,您将发现丰富多样的商品,从时尚潮流的服饰到精致实用的家居用品,从美味可口的食品到高科技的电子产品,应有尽有,满足您的各种需求。
我们秉持着品质至上的原则,严格筛选每一款商品,确保您买到的都是优质、可靠的产品。同时,我们还提供贴心的客户服务,随时为您解答疑问,解决问题,让您购物无忧。
微信小程序商城,不仅是一个购物平台,更是您生活中的贴心伙伴。让我们一起,在这个数字商城中,探索更多美好!
一、产品分类功能的实现
欢迎来到微信小程序商城的百货分类页面,这是一个为您精心打造的购物导航图。
在这个快节奏的时代,我们深知您对便捷和高效的追求。因此,我们将百货商品进行了细致的分类,让您能够迅速找到您所需要的物品。
无论是追求时尚的您,想要在服饰鞋包分类中展现个性;还是注重生活品质的您,在家居百货中寻找温馨与舒适;亦或是热爱美食的您,在食品饮料分类中探索美味的奥秘。我们的百货分类都能精准地满足您的期待。
每一个分类背后,都有我们团队的精心挑选和严格把关,只为给您带来最优质、最具性价比的商品。让我们一起,在这丰富的百货分类中,发现生活的更多美好。
(1)category.wxml
<view> <view class="left-nav"> <van-sidebar active-key="{{ activeKey }}"> <block wx:for="{{ sliderData }}" wx:key="index"> <van-sidebar-item data-title="{{ item.text }}" bindtap="clickItemNav" title="{{ item.text }}" /> </block> </van-sidebar> </view> <view class="right-nav"> <van-grid column-num="3"> <van-grid-item use-slot wx:for="{{ categoryData }}" wx:key="index"> <view bindtap="clickItem" data-tag="{{ item.tag }}"> <image mode="widthFix" src="{{ item.image }}"></image> <text>{{ item.tag }}</text> </view> </van-grid-item> </van-grid> </view> </view>
(2)category.wxss
定义一个for循环访问数组:
.left-nav{ float: left; width: 25%; } .right-nav{ float: right; width: 75%; } .right-nav image{ width: 70px; } .right-nav text{ margin-top: 10px; font-size: 13px; color: #333; text-align: center; display: block; }
(3)category.js
import { getCategory,getSearch } from "../../api/index.js" Page({ /** * 页面的初始数据 */ data: { activeKey:0, categoryData:[], sliderData:[ { "id":0, "text":"热门推荐" }, { "id":1, "text":"手机数码" }, { "id":2, "text":"家用电器" }, { "id":3, "text":"电脑办公" }, { "id":4, "text":"玩具乐器" }, { "id":5, "text":"家具家装" }, { "id":6, "text":"男装" }, { "id":7, "text":"男鞋" }, { "id":8, "text":"女装" }, { "id":9, "text":"女鞋" }, { "id":10, "text":"美妆护肤" }, { "id":11, "text":"户外运动" } ], currentTag:"热门推荐" }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { this.http(this.data.currentTag); }, clickItemNav(e){ this.http(e.currentTarget.dataset.title) }, http(tag){ getCategory({tag}).then(res =>{ if(res.data.status === 200){ this.setData({ categoryData:res.data.data }) }else{ wx.showToast({ title: '暂无数据', icon:"success" }) } }) }, clickItem(e){ getSearch({search:e.currentTarget.dataset.tag}).then(res =>{ if(!res.data.msg){ // 序列化 let goods = JSON.stringify(res.data.data) wx.navigateTo({ url: '/pages/goods/goods?goodsData=' + goods, }) }else{ wx.showToast({ title: res.data.msg, }) } }) } })
(4)category.json
{ "usingComponents": { "van-sidebar": "@vant/weapp/sidebar/index", "van-sidebar-item": "@vant/weapp/sidebar-item/index", "van-grid": "@vant/weapp/grid/index", "van-grid-item": "@vant/weapp/grid-item/index" } }
运行结果的显示:
二、产品的详细介绍以及是否添加购物车
在这里,“添加购物车”是您与心仪商品之间的约定。它是您购物决策中的一个贴心伙伴,让您能够轻松地收集那些让您眼前一亮的宝贝。
想象一下,购物车就像是您的私人宝库,您可以将各种喜爱的百货商品放入其中,慢慢积攒幸福的可能。无论是一件时尚的衣物,还是一款实用的家居用品,它们都在等待着与您一同回家。
添加购物车,为您的购物之旅增添了一份从容与自由,让您可以尽情探索更多精彩,不错过任何一个美好。
(1)details.wxml
<view class="details"> <image class="topimage" mode="widthFix" src="{{ goodsDetails.topimage }}"></image> <view class="content"> <view class="price"> ¥<text>{{ goodsDetails.price }}</text>.00 </view> <view class="title"> <text>{{ goodsDetails.title }}</text> </view> </view> <view class="introduce"> <image mode="widthFix" src="{{ goodsDetails.details }}"></image> </view> <view class="cart"> <van-goods-action> <van-goods-action-icon icon="chat-o" text="客服" bind:click="onClickKF" /> <van-goods-action-icon icon="cart-o" text="购物车" bind:click="onClickCart" /> <van-goods-action-button text="加入购物车" type="warning" bind:click="onClickAddCart" /> <van-goods-action-button data-id="{{ goodsDetails.id }}" text="立即购买" bind:click="onClickBuy" /> </van-goods-action> </view> </view>
(2)details.wxss
.details{ background: #fff; } .details .topimage{ width: 100%; } .details .content{ margin: 10px; } .details .content .price { color: #f2270c; } .details .content .price text{ color: #f2270c; display: inline-block; font-family: JDZH-Regular; font-size: 20px; line-height: 30px; } .details .content .title{ font-size: 15px; font-weight: 700; } .details .introduce image{ width: 100%; }
(3)details.js
const { getGoodsDetails,addGoodsCart } = require("../../api/index.js") Page({ /** * 页面的初始数据 */ data: { goodsDetails:{} }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { // 提示用户在获取数据 wx.showLoading({ title: '等待数据加载...', }) getGoodsDetails({id:options.id}).then(res =>{ wx.hideLoading() if(res.data.status === 200){ this.setData({ goodsDetails:res.data.data[0] }) }else{ wx.showToast({ title: '数据获取失败', icon:"success" }) } }) }, /** * 客服 */ onClickKF(){}, /** * 购物车 */ onClickCart(){ wx.switchTab({ url: '/pages/cart/cart', }) }, /** * 加入购物车 */ onClickAddCart(){ addGoodsCart({ title:this.data.goodsDetails.title, price:this.data.goodsDetails.price, image:this.data.goodsDetails.topimage, currentID:this.data.goodsDetails.id }).then(res =>{ if(res.data.status === 200){ wx.showToast({ title: res.data.msg, }) }else{ wx.showToast({ title: res.data.msg, }) } }) }, /** * 立即购买 */ onClickBuy(e){ wx.navigateTo({ url: '/pages/buy/buy?id='+e.currentTarget.dataset.id, }) } })
(4)details.json
{ "usingComponents": { "van-goods-action": "@vant/weapp/goods-action/index", "van-goods-action-icon": "@vant/weapp/goods-action-icon/index", "van-goods-action-button": "@vant/weapp/goods-action-button/index" } }
运行结果的显示:
结束语🥇
以上就是微信小程序之列表渲染
持续更新微信小程序教程,欢迎大家订阅系列专栏🔥微信小程序
你们的支持就是曼亿点创作的动力💖💖💖