黔优媒体网-软文媒体自助发稿平台!
  1. 行业资讯
  2. 正文

微信小程序商城开发之动态API实现特卖商品的流式布局代码

来源:黔优媒体网   时间:2024-09-19

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


1、新品特卖商品列表布局
2、调用动态api获取数据并加载
3、点击商品跳转商品详情

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

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


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

brand.wxml
 scroll-view scroll-y= true >brand.wxss
page{ 
 height: 100%; 
 background-color: #F3F4F6;
/* 单个图片容器的样式 */
.img_item { 
 width: 48.5%; 
 margin: 2px; 
 display: inline-block; 
 vertical-align: top; 
 background-color: #ffffff; 
 font-size: 24rpx;
.item_info{ 
 border-top:5px solid #F3F4F6; 
.product-name{ 
 color: #000; /* height: 28px; */
 text-align:left; margin: 0px 5px; 
 margin-bottom: 5px; 
.product-price-wrap .product-price-new{ 
 color: #e80080; 
 margin-left:5px; 
 font-weight:900;
.product-price-wrap .product-price-old{ 
 color: #888; 
 text-decoration: line-through; 
 padding-left: 2px;
.product-price-wrap .discount{ 
 margin-left: 30px; 
 background-color: #000; 
 color: #fff;
/* 加载更多 */
.weui-loading { 
 margin: 0 5px; 
 width: 20px; 
 height: 20px; 
 display: inline-block; 
 vertical-align: middle; 
 -webkit-animation: weuiLoading 1s steps(12, end) infinite; 
 animation: weuiLoading 1s steps(12, end) infinite; 
 background: transparent url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgxMDB2MTAwSDB6Ii8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTlFOUU5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgLTMwKSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iIzk4OTY5NyIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgzMCAxMDUuOTggNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjOUI5OTlBIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDYwIDc1Ljk4IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0EzQTFBMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCA2NSA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNBQkE5QUEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoMTIwIDU4LjY2IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0IyQjJCMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgxNTAgNTQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjQkFCOEI5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDE4MCA1MCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDMkMwQzEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTE1MCA0NS45OCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDQkNCQ0IiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTEyMCA0MS4zNCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNEMkQyRDIiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTkwIDM1IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0RBREFEQSIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgtNjAgMjQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTJFMkUyIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKC0zMCAtNS45OCA2NSkiLz48L3N2Zz4=) no-repeat; 
 background-size: 100%;
.weui-loadmore { 
 width: 65%; 
 margin: 1.5em auto; 
 line-height: 1.6em; 
 font-size: 12px; 
 text-align: center;
.weui-loadmore__tips { 
 display: inline-block; 
 vertical-align: middle; 
 color: #888;
}
brand.js
const ajax = require( #39;../../utils/ajax.js #39;);
const utils = require( #39;../../utils/util.js #39;);
var sectionData = [];
var ifLoadMore = null;
var activityId = null;
var page = 1;//默认第一页
Page({ 
 data: { 
 scrollH: 0, 
 imgWidth: 0, 
 loadingCount: 0, 
 images: [], 
 col1: [], 
 col2: []
 onLoad: function (options) {
 activityId = options.activityId;
 page = 1; 
 console.log( #39;activityId: #39; + activityId);
 wx.getSystemInfo({ 
 success: (res) = { 
 let ww = res.windowWidth; 
 let wh = res.windowHeight; 
 let imgWidth = ww * 0.48; 
 let scrollH = wh; 
 this.setData({ 
 scrollH: scrollH, 
 imgWidth: imgWidth
 }); 
 //加载首组图片
 // this.loadImages();
 this.brandShow();
onImageLoad1: function (e) { 
 let imageId = e.currentTarget.id; 
 let oImgW = e.detail.width; //图片原始宽度
 let oImgH = e.detail.height; //图片原始高度
 let imgWidth = this.data.imgWidth; //图片设置的宽度
 let scale = imgWidth / oImgW; //比例计算
 let imgHeight = oImgH * scale; //自适应高度
 let images = this.data.brandGoods; 
 let imageObj = null; 
 for (let i = 0; i images.length; i++) { 
 let img = images[i]; 
 if (img.id+ === imageId) {
 imageObj = img; 
 break;
 imageObj.height = imgHeight; 
 let loadingCount = this.data.loadingCount - 1; 
 let col1 = this.data.col1; 
 let col2 = this.data.col2; //判断当前图片添加到左列还是右列
 if (col1.length = col2.length) {
 col1.push(imageObj);
 } else {
 col2.push(imageObj);
 let data = { 
 loadingCount: loadingCount, 
 col1: col1, 
 col2: col2
 //当前这组图片已加载完毕,则清空图片临时加载区域的内容
 if (!loadingCount) {
 data.images = [];
 this.setData(data);
 brandShow: function (success) { 
 var that = this; 
 console.log(page)
 ajax.request({ 
 method: #39;GET #39;, 
 url: #39;goods/getActivityGoodsList?key= #39; + utils.key + #39; activityId= #39; + activityId+ #39; page= #39; + page + #39; size=10 #39;, 
 success: data = { 
 var newGoodsData = data.result.list;
 page += 1; 
 if (ifLoadMore) { //加载更多
 if (newGoodsData.length 0) { 
 console.log(newGoodsData)
 sectionData[ #39;brandGoods #39;] = newGoodsData;
 } else {
 ifLoadMore = false; 
 this.setData({ 
 hidden: true
 wx.showToast({ 
 title: #39;暂无更多内容! #39;, 
 icon: #39;loading #39;, 
 duration: 2000
 } else { 
 if (ifLoadMore == null) {
 ifLoadMore = true;
 sectionData[ #39;brandGoods #39;] = newGoodsData;//刷新
 that.setData({ 
 brandGoods: sectionData[ #39;brandGoods #39;], 
 loadingCount: sectionData[ #39;brandGoods #39;].length,
 }); 
 console.log(that.data.brandGoods)
 wx.stopPullDownRefresh();//结束动画
catchTapCategory: function (e) { 
 var that = this; 
 var goodsId = e.currentTarget.dataset.goodsid; 
 console.log( #39;goodsId: #39; + goodsId); //新增商品用户点击数量
 that.goodsClickShow(goodsId); //跳转商品详情
 wx.navigateTo({ url: #39;../detail/detail?goodsId= #39; + goodsId })
 goodsClickShow(goodsId) { 
 console.log( #39;增加商品用户点击数量 #39;); var that = this;
 ajax.request({ 
 method: #39;GET #39;, 
 url: #39;goods/addGoodsClickRate?key= #39; + utils.key + #39; goodsId= #39; + goodsId, 
 success: data = { 
 console.log( 用户点击统计返回结果: + data.message)
})

相关推荐:

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

微信小程序商城开发之商城首页轮播图、商品分类导航以及新品特卖的实现代码

以上就是微信小程序商城开发之动态API实现特卖商品的流式布局代码的详细内容,更多请关注php中文网其它相关文章!

微信app下载

微信是一款手机通信软件,支持通过手机网络发送语音短信、视频、图片和文字。微信可以单聊及群聊,还能根据地理位置找到附近的人,带给大家全新的移动沟通体验,有需要的小伙伴快来保存下载体验吧!


【免责申明】黔优媒体网以上展示内容来源于用户自主上传、合作媒体、企业机构或网络收集整理,版权争议与本站无关,文章涉及见解与观点不代表黔优媒体网官方立场,请读者仅做参考,本文标题:微信小程序商城开发之动态API实现特卖商品的流式布局代码;欢迎转载,转载时请说明出处。若您认为本文侵犯了您的版权信息,或您发现该内容有任何违法/违规的内容,请您立即联系我们及时修正或删除。(邮箱号: kefu@qianu.com)
此操作需要登录,请先登录~
免费注册会员,尽享国内领先平台!