当前位置: 首页 > news >正文

scroll-view在小程序页面里实现滚动,uniapp项目

 要实现红框中的区域进行滚动,scroll-view必须写高

<template><!-- 合同-待确认 --><view class="viewport"><!-- 上 --><view class="top-box"><!-- tab --><view class="tabs"><textv-for="(item, index) in tabArr":key="item.id"class="text":class="{ active: index === activeIndex }"@tap="handleClickTab(item, index)">{{ item.title }}</text></view><!-- tab的scroll-view --><scroll-viewv-for="(val, index) in tabArr":key="val.id"v-show="activeIndex === index":scroll-y="true"class="scroll-view"><view v-show="activeIndex === 0" class="base-box"><view>33333333333</view><view>33333333333</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view><view>54555555553343</view></view><view v-show="activeIndex === 1" class="contract-content-box"></view><view v-show="activeIndex === 2" class="service-plan-box"></view></scroll-view></view><!-- 下 --><view class="bottom-box"><!-- canvas --><view class="canvas-box"></view><!-- 按钮 --><view class="btn-box"><view class="btn-save"><u-button type="primary" shape="circle" text="保存"></u-button></view><view class="btn-submit"><u-button color="#f59a23" type="primary" shape="circle" text="提交"></u-button></view></view></view><!-- 基本信息 --><!-- <view class="base-info-box" v-show="activeIndex === 0"><BaseInfo></BaseInfo></view> --><!-- 合同内容 --><!-- <view class="contract-content-box" v-show="activeIndex === 1"><ContractContent></ContractContent></view> --><!-- 服务计划 --><!-- <view class="service-plan-box" v-show="activeIndex === 2"><ServicePlan></ServicePlan></view> --></view>
</template><script setup lang="ts">
import { onLoad, onReady } from "@dcloudio/uni-app"
import { ref } from "vue"
import BaseInfo from "./components/BaseInfo.vue"
import ContractContent from "./components/ContractContent.vue"
import ServicePlan from "./components/ServicePlan.vue"// 高亮的下标
const activeIndex = ref(0)const peopleId = ref()const tabArr = ref([{id: 0,title: "基本信息",},{id: 1,title: "合同内容",},{id: 2,title: "服务计划",},
])// 页面第1次加载生命周期
onLoad((option) => {console.log(option, "option-页面第1次加载生命周期拿到的参数-等确认合同")peopleId.value = option!.itemDataIdconsole.log(peopleId.value, "peopleId.value-等确认合同")
})// 页面第1次全部渲染完毕后调用这个生命周期
onReady(() => {})// 点击tab
const handleClickTab = (item: any, index: any) => {console.log(item, "点击tab拿到的item")console.log(index, "点击tab拿到的index")activeIndex.value = index
}
</script><style lang="scss">
page {height: 100%;background-color: #fff;overflow: hidden;
}.viewport {height: 100%;font-size: 14px;display: flex;flex-direction: column;background-color: #f2f2f2;justify-content: space-between;overflow: hidden;// border: 1px solid orangered;
}.tabs {display: flex;justify-content: space-evenly;height: 100rpx;line-height: 90rpx;margin: 20rpx 20rpx 0rpx 20rpx;font-size: 28rpx;border-radius: 10rpx;box-shadow: 0 4rpx 5rpx rgba(200, 200, 200, 0.3);color: #333;background-color: #fff;position: relative;z-index: 9;.text {margin: 0 20rpx;position: relative;}.active {&::after {content: "";width: 40rpx;height: 4rpx;transform: translate(-50%);background-color: #27ba9b;position: absolute;left: 50%;bottom: 24rpx;}}
}.base-info-box {flex: 1;
}.contract-content-box {flex: 1;
}.service-plan-box {flex: 1;
}.btn-box {border: 1px solid red;margin-bottom: 20rpx;display: flex;flex-direction: row;.btn-save {padding: 0 20rpx;width: 400rpx;}.btn-submit {padding: 0 20rpx;width: 400rpx;}
}.bottom-box {width: 750rpx;height: 400rpx;border: 1px solid blue;display: flex;flex-direction: column;justify-content: space-between;
}.top-box {flex: 1;width: 750rpx;border: 1px solid orangered;display: flex;flex-direction: column;
}.scroll-view {height: 660rpx;border: 1px solid green;// flex: 1;// overflow-y: auto;
}.base-box {height: 100%;background-color: pink;overflow-y: auto;
}
</style>

 overflow-y:auto 不写也会滚动

相关文章:

  • Leading Dimension是什么
  • MyCAT相关问题及答案(2024)
  • 算法通关村第十一关—位运算如何实现压缩存储(黄金)
  • 连接数问题
  • Rust-函数
  • 玩转 Go 生态|Hertz WebSocket 扩展简析
  • 【Databend】多表联结,你不会还没有掌握吧!
  • 12.2内核空间基于SPI总线的OLED驱动
  • 排序算法-希尔排序
  • Oracle 基本命令
  • P1125 [NOIP2008 提高组] 笨小猴——C++
  • Redis面试题14
  • Android Canvas图层saveLayer剪切clipPath原图addCircle绘制对应圆形区域并放大,Kotlin(3)
  • 8. 自定义分页
  • 46 C++ 从主线程向 子线程如何传递参数 ------ join 状态下
  • [译] React v16.8: 含有Hooks的版本
  • 【391天】每日项目总结系列128(2018.03.03)
  • 【面试系列】之二:关于js原型
  • C++回声服务器_9-epoll边缘触发模式版本服务器
  • GraphQL学习过程应该是这样的
  • input的行数自动增减
  • Java方法详解
  • Netty 4.1 源代码学习:线程模型
  • SpringCloud集成分布式事务LCN (一)
  • Web标准制定过程
  • 包装类对象
  • 计算机常识 - 收藏集 - 掘金
  • 利用DataURL技术在网页上显示图片
  • 前端设计模式
  • 实战:基于Spring Boot快速开发RESTful风格API接口
  • 异步
  • 运行时添加log4j2的appender
  • 正则表达式-基础知识Review
  • ​ubuntu下安装kvm虚拟机
  • (C#)Windows Shell 外壳编程系列9 - QueryInfo 扩展提示
  • (function(){})()的分步解析
  • (ibm)Java 语言的 XPath API
  • (Spark3.2.0)Spark SQL 初探: 使用大数据分析2000万KF数据
  • (TipsTricks)用客户端模板精简JavaScript代码
  • (接口封装)
  • (一)spring cloud微服务分布式云架构 - Spring Cloud简介
  • (已解决)什么是vue导航守卫
  • (转) Face-Resources
  • (转)程序员疫苗:代码注入
  • (转载)从 Java 代码到 Java 堆
  • (轉貼) 2008 Altera 亞洲創新大賽 台灣學生成果傲視全球 [照片花絮] (SOC) (News)
  • .cn根服务器被攻击之后
  • .java 9 找不到符号_java找不到符号
  • .NET CORE使用Redis分布式锁续命(续期)问题
  • .NET性能优化(文摘)
  • .pyc文件是什么?
  • [ CTF ]【天格】战队WriteUp- 2022年第三届“网鼎杯”网络安全大赛(青龙组)
  • [30期] 我的学习方法
  • [AI]文心一言爆火的同时,ChatGPT带来了这么多的开源项目你了解吗
  • [AIGC codze] Kafka 的 rebalance 机制