微信小程序实现tab及瀑布流页面

news/2024/12/5 6:41:47/

一、效果

 二、代码

复制代码可以直接用

1、json代码

{"usingComponents": {},"navigationStyle": "custom"
}

2、xml代码

<!--pages/find_module/findPage.wxml-->
<view class="container_serach"><!-- 搜索模块 --><!-- 头部搜索 --><view class="title_search"><view class="seeck_md" bindtap="finish_back"><!--消息--><view class="msg" bindtap="open_msg"><image class="msg_ic" src="/images/titelsearch/search_msg.png"></image><text class="msg_txt">消息</text><view class="msg_tag" hidden="{{noNewMsgs}}" /></view><!--头标--><view class="ahead_md" bindtap="searchtopage"><image class="title_icon_ss" hidden="true" src="/images/tabars/person_select.png"></image><!--搜索--><view class="search_md"><image class="seeck_ic" src="/images/titelsearch/search_icon.png"></image><image class="vioce_icon" src="/images/titelsearch/search_vioce.png"></image></view></view><!-- 退出 --><view class="logout" hidden="true"><image class="logout_ic" src="/images/titelsearch/search_logout.png"></image><text class="logout_txt">退出</text></view></view></view><!-- 头部搜索 --><!-- Tab布局 推荐 营养 跌倒--><!-- 导航栏navigationbar --><scroll-view class="scroll-view_H" scroll-x="true" bindscroll="scroll" style="width: 100% ; background:white"><view class='navBox'><block wx:for="{{dataHubList}}" wx:key="index" wx:id="index" wx:for-item="itemName"><view class='titleBox' id="{{index}}" bindtap='tabTitleClick' data-idx='0'><text class="{{index == currentIndex ? 'fontColorBox' : ''}}">{{itemName.name}}</text><hr class="{{index == currentIndex ? 'lineBox' : 'notLineBox'}}" /></view></block></view></scroll-view><!-- body --><!-- 内容布局 --><swiper class='swiperTtemBox' bindchange='pagechange' duration="300" current='{{currentIndex}}'><block wx:for="{{4}}" wx:key="parent_index" wx:id="parent_index" wx:for-item="parent_itemName"><!--健康知识列表 catchtouchmove='onTouchMove' --><swiper-item class='swiperTtemBox'><!-- 列表 --><scroll-view class='scbg' scroll-y='true'><!-- 轮播图 --><view class="page-section" style="margin-top: 30rpx;"><swiper indicator-dots="{{true}}" autoplay="{{true}}" circular="{{true}}" vertical="{{false}}" interval="{{3200}}" duration="{{200}}" previous-margin="{{0}}px" next-margin="{{0}}px"><block wx:for="{{deal}}" wx:key="index" wx:for-item="itemName"><swiper-item style="border-radius: 10rpx;background-color: transparent;"><image class="swiper-item" src="{{itemName.url}}"></image><text class="swiper_txt">{{itemName.name}}</text></swiper-item></block></swiper></view><!-- 列表 --><view class="list_title">{{dataHubList[currentIndex].name}}</view><view class="waterfall"><block wx:for="{{list}}" wx:key="index" wx:for-index="id" wx:for-item="itemName"><view class="item"><image class="list_item_pic" mode='scaleToFill' src="{{itemName.url}}"></image><text class="item_conn_des">{{itemName.name}}</text></view></block></view></scroll-view></swiper-item></block></swiper></view>

3、css代码

/* pages/find_module/findPage.wxss *//* 页面全局样式设置 */
page {background: #eeecec;left: 0rpx;right: 0rpx;
}/* scroll-view去掉滚动条 */
scroll-view ::-webkit-scrollbar {display:none;width:0;height:0;color:transparent;
}.container_serach {display: flex;flex-direction: column;width: 100%;height: 91%;left: 0rpx;right: 0rpx;top: 0rpx;overflow: hidden;
}/* 头部搜索 *//* 搜索标题 */
.title_search {background: linear-gradient(to right, #0455a7, #62c8ec);height: 170rpx;width: 100%;display: flex;flex-direction: row;align-items: flex-end;justify-content: flex-start;
}/* 搜索模块样式 */
.seeck_md {display: flex;flex-direction: row;width: 100%;justify-content: space-between;align-items: flex-end;
}/* 头部头像样式 */
.ahead_md {display: flex;flex-direction: row;width: 100%;margin-bottom: 20rpx;
}.title_icon_ss {height: 70rpx;width: 70rpx;background-color: white;border-radius: 35rpx;margin-left: 20rpxrpx;
}/* 消息提示 */
.msg_tag {position: absolute;background-color: #ff6162;width: 14rpx;height: 14rpx;border-radius: 7rpx;margin-bottom: 72rpx;margin-left: 24rpx;
}/* 搜索部分bg*/
.search_md {background-color: #69ccf1;margin-left: 10rpx;height: 70rpx;width: 390rpx;border-radius: 35rpx;display: flex;flex-direction: row;align-items: center;justify-content: space-between;
}/* 搜索 */
.seeck_ic {height: 46rpx;width: 46rpx;margin-left: 20rpx;border-radius: 23rpx;
}/* 语音 */
.vioce_icon {height: 46rpx;width: 46rpx;border-radius: 23rpx;margin-right: 20rpx;
}/* 消息 */
.msg {width: 100rpx;height: 90rpx;display: flex;flex-direction: column;justify-content: center;align-items: center;margin-right: 0rpx;margin-left: 30rpx;
}/* 消息图片标记 */
.msg_ic {height: 44rpx;width: 48rpx;margin-right: 2rpx;margin-right: 10rpx;
}/* 消息文本 */
.msg_txt {font-size: 24rpx;height: 40rpx;width: 60rpx;margin-bottom: 20rpx;align-items: flex-start;color: #fff;display: flex;justify-content: flex-start;
}/* 退出 */
.logout {width: 100rpx;height: 90rpx;display: flex;flex-direction: column;justify-content: center;align-items: center;margin-right: 30rpx;
}/* 退出页面按钮样式 */
.logout_ic {height: 44rpx;width: 48rpx;margin-right: 2rpx;
}/* 退出页面文本描述样式 */
.logout_txt {font-size: 24rpx;height: 40rpx;width: 60rpx;margin-bottom: 20rpx;align-items: flex-start;color: #fff;display: flex;justify-content: flex-start;
}/* 搜索标题 */
/* 头部搜索  *//* 轮播图 */
.page-body {padding-top: 60rpx;
}.page-section {width: 100%;margin-bottom: 40rpx;box-sizing: border-box;padding-left: 30rpx;padding-right: 30rpx;
}.swiper-item {height: 150px;width: 100%;border-radius: 10rpx;
}/* 轮播图内容标题txt */
.swiper_txt {color: #666666;font-size: 30rpx;width: 240rpx;font-weight: bolder;position: relative;bottom: 70rpx;margin-left: 20rpx;white-space: nowrap;text-overflow: ellipsis;align-items: flex-start;display: -webkit-box;overflow: hidden;
}/* 轮播图 *//* tab标签模块 */
.navBox {width: 100%;height: 80rpx;background: white;display: flex;flex-direction: row;align-items: center;justify-content: center;
}/* 子iten */
.titleBox {/* 未选中文字的样式 */color: rgb(168, 170, 175);font-size: 30rpx;display: flex;flex-direction: column;align-items: center;justify-content: flex-end;width: 200rpx;height: 100%;
}.fontColorBox {/* 文字默认颜色 */color: #00c6ac;
}.lineBox,
.notLineBox {/* 选中及未选中底线共同样式 */width: 60rpx;height: 4rpx;margin-top: 16rpx;border-radius: 4rpx;
}.lineBox {/* 选中底线样式 */background: #00c6ac;width: 180rpx;height: 4rpx;margin-top: 16rpx;border-radius: 4rpx;
}#aiding,
#aidfinish {margin-left: 0rpx;
}/* tab标签模块 *//* 列表部分 */
/* 列表页面 */
.swiperTtemBox {height:calc(100vh - 360rpx);overflow: scroll;margin: 0rpx 0rpx;background: #f0f0f0;font-size: 28rpx;
}/* scrollview */
.scbg {background-color: #f0f0f0;width: 100%;height: calc(100vh - 360rpx);left: 0rpx;right: 0rpx;top: 0rpx;padding-bottom: 20rpx;
}/* 列表标题 */
.list_title {background-color: transparent;margin-right: 30rpx;margin-left: 30rpx;margin-bottom: 20rpx;color: #000;font-weight: 800;font-size: 36rpx;
}/* item */
.waterfall {display: grid;grid-template-columns: repeat(2, 1fr);grid-gap: 0.5em;grid-auto-flow: row dense;grid-auto-rows: 15px;margin-left: 30rpx;margin-right: 30rpx;
}.waterfall .item {width: 100%;background: #f0f0f0;color: #ddd;
}.waterfall .item:nth-of-type(2n+1) {grid-row: auto / span 7;border-radius: 10rpx;
}.waterfall .item:nth-of-type(2n+2) {grid-row: auto / span 5;border-radius: 10rpx;
}/* .waterfall .item:nth-of-type(3n+3) {grid-row: auto / span 12;border-radius: 10rpx;
} *//* item图片 */
.list_item_pic {height: 100%;width: 100%;border-radius: 10rpx;
}/* item文本 */
.item_conn_des {color: #666666;font-size: 26rpx;width: 240rpx;font-weight: bolder;position: relative;bottom: 70rpx;margin-left: 10rpx;white-space: nowrap;text-overflow: ellipsis;align-items: flex-start;display: -webkit-box;overflow: hidden;
}/* 列表部分 */

4、js代码

说明下js文件中的dataurl为图片地址,打不开的可以自行百度换一个图片替代

  {

      name: '面包',

      num: '1',

      title: '面包',

      url: 'http://183.214.193.179:9000/zykj-cloud-prod/undefined/2022/04/14/b0fe4413-9055-4b6c-861d-88f38860eff5.png',

    },

// pages/find_module/findPage.ts
Page({data: {deal:[{name: '裤子',url:'http://183.214.193.179:9000/zykj-cloud-prod/undefined/2022/04/14/cb643adf-0653-4e25-82c9-e27c99ef2a4e.png'},{name:'鞋子',url:'http://183.214.193.179:9000/zykj-cloud-prod/undefined/2022/06/24/da9c497c-c822-45ad-89da-3ad8b50e6ed3.png'},{name:'外套',url:'http://183.214.193.179:9000/zykj-cloud-prod/undefined/2022/04/14/b0fe4413-9055-4b6c-861d-88f38860eff5.png'}],list: [{name: '电视',num: '1',title: '测试数据测试测试测试测测试数据测试测试测试测测试数据测试测试测试测测试数据测试测试测试测',url: 'http://183.214.193.179:9000/zykj-cloud-prod/undefined/2022/04/14/cb643adf-0653-4e25-82c9-e27c99ef2a4e.png',},{name: '家电',num: '1',title: '测试数据测试测试测试测测试数据测试测试测试测测试数据测试测试测试测测试数据测试测试测试测',url: 'http://183.214.193.179:9000/zykj-cloud-prod/undefined/2022/06/24/da9c497c-c822-45ad-89da-3ad8b50e6ed3.png',},{name: '鞋子',num: '1',title: '鞋子',url: 'http://183.214.193.179:9000/zykj-cloud-prod/undefined/2022/04/14/b0fe4413-9055-4b6c-861d-88f38860eff5.png',},{name: '水果',num: '1',title: '水果',url: 'http://183.214.193.179:9000/zykj-cloud-prod/undefined/2022/04/14/cb643adf-0653-4e25-82c9-e27c99ef2a4e.png',},{name: '水桶',num: '1',title: '水桶',url: 'http://183.214.193.179:9000/zykj-cloud-prod/undefined/2022/04/14/b0fe4413-9055-4b6c-861d-88f38860eff5.png',},{name: '饮料',num: '1',title: '饮料',url: 'http://183.214.193.179:9000/zykj-cloud-prod/undefined/2022/06/24/da9c497c-c822-45ad-89da-3ad8b50e6ed3.png',},{name: '生鲜',num: '1',title: '生鲜',url: 'http://183.214.193.179:9000/zykj-cloud-prod/undefined/2022/04/14/b0fe4413-9055-4b6c-861d-88f38860eff5.png',},{name: '肉类',num: '1',title: '肉类',url: 'http://183.214.193.179:9000/zykj-cloud-prod/undefined/2022/04/14/cb643adf-0653-4e25-82c9-e27c99ef2a4e.png',},{name: '面包',num: '1',title: '面包',url: 'http://183.214.193.179:9000/zykj-cloud-prod/undefined/2022/04/14/b0fe4413-9055-4b6c-861d-88f38860eff5.png',},{name: '大米',num: '1',title: '大米',url: 'http://183.214.193.179:9000/zykj-cloud-prod/undefined/2022/04/14/cb643adf-0653-4e25-82c9-e27c99ef2a4e.png',}],dataHubList:[{name:'推荐',id:0},{name:'营养',id:1},{name:'跌倒',id:2},{name:'应急',id:3}],currentIndex:0,findChoose: true,//选中标记},/*** 生命周期函数--监听页面加载*/onLoad() {},/*** 生命周期函数--监听页面初次渲染完成*/onReady() {},/*** 生命周期函数--监听页面显示*/onShow() {},// tab事件监听tabTitleClick:function(e:any){//  console.log("===当前选择tabid==="+JSON.stringify(e.currentTarget.id));var that = this;that.setData({//拿到当前索引并动态改变currentIndex: e.currentTarget.id})},// 页面事件pagechange:function(e:any){// console.log("===sankni==="+JSON.stringify(e));var that = this;that.setData({//拿到当前索引并动态改变currentIndex: e.detail.current})},// 列表滑动切换事件监听onTouchMove:function(){},/*** 生命周期函数--监听页面隐藏*/onHide() {},/*** 生命周期函数--监听页面卸载*/onUnload() {},/*** 页面相关事件处理函数--监听用户下拉动作*/onPullDownRefresh() {},/*** 页面上拉触底事件的处理函数*/onReachBottom() {},/*** 用户点击右上角分享*/onShareAppMessage() {},// 打开消息页面open_msg: function () {wx.navigateTo({url: '/pakagemsg/pages/msg/msg'})},// 搜索finish_back: function () {wx.showToast({title: '暂无可搜索数据...',icon: 'loading',mask: true,duration: 1000})// wx.navigateTo({//   url: "/pages/healthyhead/searchmodule/searchapge"// })},// 健康页first_select: function () {wx.redirectTo({url: "/pages/home/healthypage"})},// 服务four_select: function () {wx.redirectTo({url: '/pages/services/servicespage'})},//我的five_select: function () {wx.redirectTo({url: '/pages/personal/myinfo'})},//拨号three_select: function () {wx.showModal({content: '是否发起一键呼救?',confirmText: '确定',cancelText: '取消',success(res) {if (res.confirm) {wx.makePhoneCall({phoneNumber: '120',success: function () {console.log("拨打电话成功!")},fail: function () {console.log("拨打电话失败!")}})console.log('用户点击确定')} else if (res.cancel) {console.log('用户点击取消')}}})},})


http://www.ppmy.cn/news/347673.html

相关文章

[夏令营]——天津大学智能与计算学部夏令营随笔

前言 天大智算面了两次试。 7月6日面试 单独联系了老师&#xff0c;实验室面。 首先是五分钟的自我介绍。 问题&#xff1a; 上科大X老师那边是你自己联系的吗&#xff1f; 不是&#xff0c;balabala 说一下对无监督句法分析的认识和理解&#xff0c;为什么能做无监督的呢…

国内35所人工智能学院大盘点

https://www.toutiao.com/a6683844505864503819/ 2019-04-25 22:50:18 据悉&#xff0c;截至目前&#xff0c;已有35所高校设置了人工智能新专业&#xff0c;新增101所高校设置机器人工程专业&#xff0c;新增96所高校设置智能科学与技术专业&#xff0c;50所高校把人工智能领…

【调剂】天津科技大学人工智能学院2022年硕士研究生招生调剂预通知

公众号【计算机与软件考研】每天都会发布最新的计算机考研调剂信息&#xff01; 点击公众号界面左下角的调剂信息或者公众号回复“调剂”是计算机/软件等专业的所有调剂信息集合&#xff0c;会一直更新的。 一、学院简介 天津科技大学人工智能学院拥有“软件工程”&#xff08;…

人工智能与实体经济深度融合

从连续两次写入政府工作报告&#xff0c;到业内积极部署推进智能产业&#xff0c;人工智能无疑已经成为当下热门话题。我们将迎来怎样的智能生活&#xff0c;人工智能和实体经济如何深度融合&#xff0c;哪些发展瓶颈亟待突破&#xff0c;都值得思考。 人工智能让城市变得更聪明…

世界智能大会将在天津举行

世界智能大会新闻发布会6日在北京召开。据主办方介绍&#xff0c;首届世界智能大会将于6月29日—30日在天津梅江会展中心举行。 为深入贯彻中央创新驱动发展战略&#xff0c;推动落实京津冀协同发展国家战略、服务雄安新区规划建设&#xff0c;落实中央对天津“一基地三区”功能…

中小学人工智能课程的设计原则与实践范例

中小学数字化教学 《中小学数字化教学》&#xff08;CN10-1490/G4&#xff09;系教育部主管、人民教育出版社主办的国家级教育专业期刊&#xff0c;主要服务于运用信息技术改进教学的中小学教师、教研员、校长&#xff0c;以及师范院校师生和科研院所的科研人员。本公号是刊物…

天津大学智能车队大一培训-做好智能车竞赛需要具备哪些知识

做好智能车竞赛需要具备哪些知识 第一章 智能车比赛1.1比赛概况1.2天津大学智能车队 第二章 软件硬件机械概况2.1软件概况2.1.1涉及到的单片机主要功能2.1.2 写智能车程序的步骤2.1.3 单片机之间的主要区别 2.2 硬件概况2.3机械概况 第三章 大一培训安排3.1 51单片机3.2 STM32单…

天津大学智能车队大一培训前准备(2022)

天津大学智能车队大一培训前准备 写在前面介绍下我们单片机是什么培训流程经过半学期学习能做出什么第一节课需要准备什么 软件公众号推荐keil C51介绍下载注册机 proteus的介绍、下载 预习链接模式的转变 写在前面 介绍下我们 我们是建于2008年的天津大学智能车队&#xff0…