微信小程序商城开发之动态API实现商品的详情页的代码(上)(微信小程序商品详情页怎么做)

网友投稿 997 2022-10-05

微信小程序商城开发之动态API实现商品的详情页的代码(上)(微信小程序商品详情页怎么做)

微信小程序商城开发之动态API实现商品的详情页的代码(上)(微信小程序商品详情页怎么做)

本篇文章给大家带来的内容是关于微信小程序商城开发之动态API实现商品的详情页的代码(上) ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

看效果

程序员必备接口测试调试工具:立即使用Apipost = Postman + Swagger + Mock + Jmeter Api设计、调试、文档、自动化测试工具 后端、前端、测试,同时在线协作,内容实时同步

开发计划

根据商品ID获取商品详情API数据模型

访问:https://100boot-/ 选择微商城案例,如下图所示:

下方还有详细的数据模型可以查看哦!

home.js 增加跳转商品详情事件

detail.wxml

{{goods.title}} ¥{{goods.price}} 原价¥{{goods.privilegePrice}} 商品详情 -

detail.wxss

page { display: flex; flex-direction: column; height: 100%;}/* 直接设置swiper属性 */swiper { /* height: 500rpx; */ height: 750rpx;}swiper-item image { width: 100%; height: 100%;}/**商品价格**/.product-price-wrap{ display: flex; justify-content:space-between;/**两边对齐**/ flex-direction: row; flex-wrap: wrap; margin:5px 5px; /* border:1rpx solid red; */} .product-price-wrap .product-price-new{ color: red; font-size: 40rpx; margin: 10rpx;}.product-price-wrap .product-price-old{ color: #888; text-decoration: line-through; padding-left: 5px; font-size: 12px; line-height:30px; font-weight:300;}.product-name-wrap{ margin: 0px 10px; font-size: 14px; color: #404040;}.details{ padding: 0 5px 0 5px; }.detail { display: flex; flex-direction: column; margin-top: 15rpx; margin-bottom: 0rpx; }.detail .title { font-size: 40rpx; margin: 10rpx; color: black; text-align: justify; height: 100rpx;}.detail .price { color: red; font-size: 40rpx; margin: 10rpx;}.line_flag { width: 80rpx; height: 1rpx; display: inline-block; margin: 20rpx auto; background-color: gainsboro; text-align: center;}.line { width: 100%; height: 2rpx; display: inline-block; margin: 20rpx 0rpx; background-color: gainsboro; text-align: center;}.detail-nav { display: flex; flex-direction: row; align-items: center; float: left; background-color: #fff; position: fixed; bottom: 0; right: 0; z-index: 1; width: 100%; height: 100rpx;}.button-green { background-color: #4caf50; /* Green */}.button-red { background-color: #f44336; /* 红色 */}.button-addCar { background-color: #f44336; /* 红色 */ width: 100%;}.image_detail { width: 100%; /* height: 750rpx; */}.detail-nav image { width: 70rpx; height: 50rpx; margin: 20rpx 40rpx;}.line_nav { width: 5rpx; height: 100%; background-color: gainsboro;}/* 占位 */.temp { height: 100rpx;}-

detail.js

const ajax = require('../../utils/ajax.js');const utils = require('../../utils/util.js');var imgUrls = []; var detailImg = [];var goodsId = null;var goods = null;Page({ /** * 页面的初始数据 */ data: { isLike: true, showDialog: false, goods:null, indicatorDots: true, //是否显示面板指示点 autoplay: true, //是否自动切换 interval: 3000, //自动切换时间间隔,3s duration: 1000, // 滑动动画时长1s }, //预览图片 previewImage: function (e) { var current = e.target.dataset.src; wx.previewImage({ current: current, // 当前显示图片的http链接 urls: this.data.imgUrls // 需要预览的图片http链接列表 }) }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { var that = this; goodsId = options.goodsId; console.log('goodsId:' + goodsId); //加载商品详情 that.goodsInfoShow(); }, goodsInfoShow: function (success) { var that = this; ajax.request({ method: 'GET', url: 'goods/getGoodsInfo?key=' + utils.key+'&goodsId=' + goodsId, success: data => { var goodsItem = data.result; for (var i = 0; i < goodsItem.shopGoodsImageList.length; i++) { imgUrls[i] = goodsItem.shopGoodsImageList[i].imgUrl; } var details = goodsItem.details.split(";"); for (var j = 0; j < details.length; j++) { detailImg[j] = details[j]; } goods = { imgUrls: imgUrls, title: goodsItem.name, price: goodsItem.price, privilegePrice: goodsItem.privilegePrice, detailImg: detailImg, imgUrl: goodsItem.imgUrl, buyRate: goodsItem.buyRate, goodsId: goodsId, count:1, totalMoney: goodsItem.price, } that.setData({ goods : goods }) console.log(goods.title) } }) },})-

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Zotero 功能介绍
下一篇:Zotero 快速入手系列一
相关文章

 发表评论

暂时没有评论,来抢沙发吧~