微信小程序瀑布流布局

2023-11-20

<template>
	<view id="max_box">
		<view  class="page-main">
		  <view class="card">
		      <view class="coloum1" >
		        <view class="card-item" v-for="(item,index) in cardList1" :key="item.id" :style="[{background: item.color}]">
		            <image class="itemImg" :src="item.f_image" mode="widthFix"></image>
					<view class="item_text" >{{item.f_id}}</view>
		        </view>
		      </view>
		      <view class="coloum2">
		         <view class="card-item" v-for="(item,index) in cardList2" :key="item.id" :style="[{background: item.color}]">
		            <image class="itemImg" :src="item.f_image" mode="widthFix"></image>
					<view class="item_text" >{{item.f_id}}</view>
		        </view>
		      </view>
		  </view>
		</view>
	</view>
</template>

<script>
	// 获取系统信息
	const systemInfo = wx.getSystemInfoSync();
	// 获取屏幕宽度
	const screenWidth = systemInfo.screenWidth;
	import store from '@/store/index.js'
	const myrpx = store.state.myrpx
	import http from '@/util/http.js'
	export default {
		data() {
			return {
				scrollTop: 0,
				old: {
					scrollTop: 0
				},
				num: '0',
				cardList:[
				],
				leftHeight:0,//左侧列表累计高度
				rightHeight:0,//右侧列表累计高度
				commonHeigt:100, //瀑布流卡片 除图片外的固有高度
				cardList1:[],//左侧列表渲染数据
				cardList2:[],//右侧列表渲染数据
			}
		},
		async onLoad() {
			this.getPublishedforum()
			
		},
		methods: {
			init(){
				//初始化两侧累计高度、两侧表数据
				//重新通过接口获取数据
				this.leftHeight = 0
				this.rightHeight = 0
				//获取图片宽高比
				this.cardList = this.cardList.filter((item,index)=>{
					//获取图片宽高比
					uni.getImageInfo({
					  src: item.f_image,
					  success: res => {
					    // 计算宽高比
					    const ratio = res.width / res.height
						//图片真实高度= 真实宽度 / 宽高比  myrpx当前机型 px换算成rpx此处省略
						item.trueHeight = (screenWidth * myrpx * 0.48) / ratio
						if(this.leftHeight <= this.rightHeight){ //如果右侧列大于左侧列的总高度  则添加左边
							this.cardList1.push(item)
							this.leftHeight =this.leftHeight + item.trueHeight + this.commonHeigt
						}else{
							this.cardList2.push(item)
							this.rightHeight =this.rightHeight + item.trueHeight + this.commonHeigt
							
						}
					  } 
					})
					return item
				})
			},
			// 获取发布的帖子数据
			getPublishedforum() {
				http('/getPublishedpost', 'POST', 
					{ 
					  start:0,
					  count:10
					},
				)
				.then((res) => {
						this.cardList = res[1].data
						this.init()
					})
			},
		}
	}
</script>

<style lang="less">
		.page-main{
			width: 100%;
			height: 100%;
			display: flex;
			justify-content: center;
			.card{
				display: grid;
				grid-template-columns: repeat(2,1fr);
				grid-gap: 10px; /* 列之间和行之间的间隙 */
			}
			.card-item{
				width: 400rpx;
				image{
					width: 100%;
				}
				margin-bottom: 10rpx;
			}
			.item_text{
				width: 100%;
				height: 100rpx;
				background-color: skyblue;
				z-index: 999;
			}
		}
</style>

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

微信小程序瀑布流布局 的相关文章

  • 【计算机毕业设计】微信小程序反诈科普平台

    相比于以前的传统手工管理方式 智能化的管理方式可以大幅降低反诈科普平台的运营人员成本 实现了反诈科普平台的标准化 制度化 程序化的管理 有效地防止了反诈科普平台的随意管理 提高了信息的处理速度和精确度 能够及时 准确地查询和修正反诈科普 一
  • 【计算机毕业设计】北京医疗企业固定资产管理系统的设计与实现 _4c4c1

    近年来 人们的生活方式以网络为主题不断进化 北京医疗企业固定资产管理就是其中的一部分 现在 无论是大型的还是小型的网站 都随处可见 不知不觉中已经成为我们生活中不可或缺的存在 随着社会的发展 除了对系统的需求外 我们还要促进经济发展 提高工
  • APP开发毕业设计|ssm爱心小屋公益机构智慧管理APP

    作者主页 编程指南针 作者简介 Java领域优质创作者 CSDN博客专家 CSDN内容合伙人 掘金特邀作者 阿里云博客专家 51CTO特邀作者 多年架构师设计经验 腾讯课堂常驻讲师 主要内容 Java项目 Python项目 前端项目 人工智
  • 删除包含该单词的每一行

    如果该行包含特定单词 例如 我想删除整行 cat If cat 就在这一行 删除整行 Example Before 0123456789 CAT 0912WORDS 53DAD DSFC09243 DOG KLJ0963 CAT 8953
  • 如何在记事本++中为每一行添加右大括号

    我有一个用记事本打开的文件 显示如下 insert into agent sales values 61 39858 insert into agent sales values 101 5786 insert into agent sal
  • 从 Git Bash 调用 notepad++

    我在用msysgit http msysgit github com 在 Windows 7 中 如何从 Git Bash 调用 notepad 就像我们使用默认记事本一样 比如说 name usename记事本文本文件 txt 相反 我希
  • Notepad++ 没有语法突出显示我的文件

    直到一周前 我还很高兴在 Notepad 中使用语法突出显示编写 html erb 文件 然后我的硬盘坏了 我在新系统上重新安装了 Notepad 但是当我打开 html erbs 时 只有其中一些正确突出显示 我认为问题可能是大多数这些文
  • 如何从 C:\cygdrive\c\ 更改 git 路径

    如何将 git 路径从 C cygdrive c 更改为 C 或只是 cygdrive c 我已将 notepad 设置为 git 的编辑器 当我尝试执行交互式变基 git rebase i 时 记事本打开 但由于这个奇怪的路径 包括 C
  • Notepad++ HTML Tidy 未知异常 Windows 7 x64

    当我尝试从 NotePad v5 9 3 中的 TextFX 菜单运行 HTML Tidy 时 出现以下错误 找不到配置文件 C Program Files x86 Notepad plugins Config tidy HTMLTIDY
  • Notepad++ 缓存文件位置

    在最新版本的 Notepad 上 当应用程序关闭时 重新启动应用程序时会保留未保存的文件 我认为这些文件缓存在临时文件中 该文件的位置是什么 谢谢 我自己注意到了 并在里面找到了文件backup文件夹 您可以检查它在哪里使用菜单 设置 gt
  • 如何在 Notepad++ 中使用富文本?

    我喜欢Notepad 但有时我需要将一些单词设置为粗体或草书 更改字体大小等 在 Notepad 中可以吗 我们可以突出显示文本 右键单击文本Style Token gt Using 1st Style通过使用这个我们可以突出显示文本 最多
  • 内置 html 编码的 HTML 编辑器

    我现在使用 Notepad 似乎经常在这里建议进行基本的 html 和 css 编辑 唯一缺少的是粘贴到文本中的 HTML 编码方法 有没有办法在 Notepad 中执行此操作 或者我是否需要寻找其他编辑器来执行此操作 如果有什么建议的话
  • 在 Notepad++ 中格式化代码

    Notepad 中是否有用于格式化代码的键盘快捷键 我主要处理 HTML CSS 和 Python 代码 例如 To
  • 如何删除多个文件中的第一个空白行?

    我有数千个第一行为空的文本文件 是否可以一次性删除所有文件中的这一行 你需要一个像这样的bat脚本 echo off for i in txt do more 1 fi gt gt temp del fi ren temp nxi 将上面的
  • Notepad++改变文字颜色?

    我正在使用 Notepad 来模拟 ISPF 屏幕 我使用 StyleConfigurator 选择合适的字体 将其着色为绿色 并设置黑色背景 如何永久更改所选文本的颜色 例如 如果我的客户名称 THALECRESS 如何将客户名称 蓝色
  • Notepad++:块注释不起作用

    I am running Notepad 5 8 5 on Windows 7 editing Perl programs I would like to comment out a block of text lines and late
  • 正则表达式替换记事本++中的html空格和前导空格

    我尝试使用以下正则表达式来删除 html 空格和前导空格 Find s lt gt s Replace 1 但每次执行此操作时 我的文档中都会出现 186 次 1 字面意思 任何帮助将不胜感激 这是我正在谈论的一个例子 This field
  • 将 Excel 行输出到一系列文本文件

    在 Excel 中 我在 A 列中有一个文章名称列表 在 B 列中有一个免责声明 现在 对于 A 列中的每篇文章 我想创建一个文本文件 A 是文件的标题 B 是文件的标题 免责声明是文件的内容 这可能吗 我的想法是 我有数百个这样的东西 我
  • Notepad++ SourceCookifier 插件在大型 C++ 标头上非常慢

    我喜欢在 Notepad 中浏览我的 C 项目 我使用 SourceCookifier 插件来轻松地在大文件的定义之间跳转 但是 如果我加载一个大的 C 头文件 大约 30 000 行 其中有很多 define and typedef里面的
  • Notepad++,比较插件安装问题

    我有 Notepad 7 5 8 npp 7 5 8 它没有插件管理器 以前的版本曾经有过它 我遵循了这些说明 我从下载的https sourceforge net projects npp compare https sourceforg

随机推荐

  • mermaid

    Butterfly在不久的未来能支持mermaid https butterfly js org posts 4aa8abbe mermaid
  • Qt开发记录2——功能开发——按钮-打开缓存(打开本地文件夹)

    链接1 qt程序实现打开文件夹 链接2 QT5 利用QDesktopServices打开本地文件或文件夹 目录 打开缓存 打开本地文件夹 在UI界面拖拽一个按钮控件 转到槽 跳转到槽函数编写代码 打开缓存 打开本地文件夹 需求 选中扫描到本
  • dns提供商主机名_什么是FQDN?它和主机名有区别吗?

    请关注本头条号 每天坚持更新原创干货技术文章 如需学习视频 请在微信搜索公众号 智传网优 直接开始自助视频学习 1 前言 本文主要讲解什么是FQDN 什么是FQDN 2 FQDN的名词解释 完全限定域名fully qualified dom
  • (Python)计算平均值

    计算平均值 问题描述 从键盘输入三个整数 分别存入x y z三个整型变量中 计算并输出三个数的和以及平均值 输入形式 从键盘输入三个整数 整数之间以空格隔开 输出形式 在屏幕上分两行显示结果 第一行为三个数的和 整数形式输出 第二行为三个数
  • 数据库设计范式的理解

    文章来自 http www ccvita com 418 html 前言 为什么要写这篇文章呢 从去年年底开始 就和很多做技术的朋友交流过 从数据库设计到数据库架构各个方面的内容 有一些朋友执着于ORM 执着于所谓的数据库设计 却忘记了一切
  • 惠普服务器硬盘指示灯不亮或显示蓝色

    通过惠普服务器指示灯我们可以了解服务器当前的运行状态 指示灯不同的颜色和闪烁频率都代表不同的意义 那么惠普服务器硬盘指示灯不亮是什么原因导致的呢 如果已经在系统中安装了一个或多个硬盘 请检查下列各项 1 硬盘的电源线与信号线安装是否正确 2
  • 数仓面试总结

    2021年5月开始找工作 面试了若干个数仓的岗位 面的差不多也就2个 总结下大致的面试内容 一 字节视频面 上海的一个部门 视频面挂 小伙伴内推的 这个5月份面的 大概视频面试了一个小时 主要面试内容 1 问了mapreduce的具体执行过
  • MySQL减一年的日期函数_MySQL 日期加减函数汇总

    1 addtime 为日期加上指定秒数select addtime now 1 加1秒 2 adddate 有两种用法 第二个参数直接填数字的话是为日期加上指定天数 填interval的话是为日期加上指定的interval时间select
  • AI 预测世界杯比赛结果,惊掉下巴

    哈喽 大家好 今天看到Kaggle上有一个预测世界杯比赛结果的项目 截至目前 4 场比赛预测结果全中 今天把源码研究了一下 做了中文注释 给大家分享下 文章目录 技术提升 1 获取数据集 2 特征工程 3 建模 4 预测 技术提升 本文由技
  • 一文搞懂ARP协议

    更多文章请关注我的个人微信公众号 极客熊猫 欢迎扫码关注 什么是ARP ARP是Address Resolution Protocol的首字母缩写 即地址解析协议 如果一台主机要将一个帧发送到另一台主机 只知道这台主机的IP地址是不够的 还
  • hosts文件有多余条目导致dbconsole配置不成功

    1 修改密码alter user system identified by oracle alter user sys identified by oracle alter user dbsnmp identified by oracle
  • 【笔记】 感受野与权值共享 摄像头标定 相机坐标与世界坐标

    1 卷积神经网络的局部感受野 卷积神经网络的神经元之间的连接模式类似于大脑视觉皮层组织 个体皮层神经元仅在被称为感受野的视野受限区域中对刺激做出反应 局部感受野就是卷积神经网络每一层输出的特征图 Feature Map 上的像素点在原始图像
  • ros安装qt以及编译ros功能包

    2 添加qt到环境变量 sudo nano usr bin qtcreator bin sh export QT HOME home kexue Qt5 9 9 Tools QtCreator bin QT HOME qtcreator s
  • Java线程(Thread)生命周期的6种状态

    当线程被创建并启动以后 它既不是一启动就进入了执行状态 也不是一直处于执行状态 在线程的生命周期中 可能处于不同的状态 java lang Thread State 列举出了这6种线程状态 线程状态 导致状态发生条件 New 新建 线程刚被
  • tcp粘包和拆包的处理方案

    产生tcp粘包和拆包的原因 我们知道tcp是以流动的方式传输数据 传输的最小单位为一个报文段 segment tcp Header中有个Options标识位 常见的标识为mss Maximum Segment Size最大消息长度 指的是
  • 计算某字符出现次数

    描述 写出一个程序 接受一个由字母 数字和空格组成的字符串 和一个字符 然后输出输入字符串中该字符的出现次数 不区分大小写字母 数据范围 1 n 1000 1 le n le 1000 1 n 1000 输入描述 第一行输入一个由字母和数字
  • 深度学习系列37:CLIP模型

    1 模型说明 含义 CLIP Contrastive Language Image Pre training git地址 https github com openai CLIP paper https arxiv org abs 2103
  • SpringCloud使用Zookeeper作为服务注册发现中心

    本篇文章主要记录SpringCloud使用Zookeeper作为服务注册发现中心 通过服务提供者和消费者为例 来真正掌握zk注册中心 目录 一 搭建服务提供者 1 创建cloud provider payment8004项目 2 修改配置
  • BCrypt密码加密的简单使用

    一 BCrypt基础 在一个项目中 只要涉及用户的登陆注册 就涉及到用户密码的保护 用户的密码存在数据库是对管理员是透明的 所以为了防止管理员泄露密码 提高用户密码的安全性 我们通常会对用户密码进行加密后再存入数据库 目前MD5与Bcryp
  • 微信小程序瀑布流布局