Fork me on GitHub

微信小程序实现瀑布流布局

前言

最近在做微信小程序,有一个图片列表页面,想通过瀑布流方式来实现,个人比较喜欢这种效果

先看实现效果图

实现原理及代码

将布局分为两列,我们可以使用flex设置 displex:flex 然后每列宽度设置50%

<div class="photos">
      <ul class="list">
        <li class="list-item" v-for="(item,index) in list" :key="item" @click="detail(item)">
          <div class="item-content" v-if="index%2==0">
            <image class="avatar" :src="item.url" mode="widthFix"></image>
            <div v-text="item.name+index"></div>
          </div>
        </li>
      </ul>
      <ul class="list">
        <li class="list-item" v-for="(item,index) in list" :key="item" @click="detail(item)">
          <div class="item-content" v-if="index%2==1">
            <image class="avatar" :src="item.url" mode="widthFix"></image>
            <div v-text="item.name+index"></div>
          </div>
        </li>
      </ul>
    </div>

.photos {
    display: flex;
  }
  .list {
    width: 400rpx;
    .list-item {
      margin: 20rpx;
      .avatar {
        width: 100%;
      }
    }
  }

我们通过在每一列去遍历list数组使用if去判断是基数还是偶数来显示图片

v-if="index%2==0"

最后

以上就是实现瀑布流的方式,是不是很简单

参考阅读

https://www.cnblogs.com/sizhou/p/7219551.html

posted @   fozero  阅读(19880)  评论(2编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
点击右上角即可分享
微信分享提示