uniapp日期,上一周,下一周切换,点击中间日期还能通过日历跳转

uniapp日期,上一周,下一周切换,点击中间日期还能通过日历跳转

因为在网上找不到适合自己的组件,就直接自己手搓了一个,希望能帮到大家。
在页面上要展示周一到周日的时间,并且可以左右切换上一周下一周,还可以通过点击中间日期跳出日历弹窗定点到对应日期的那一周和对应时间,下面是效果图和代码还比较粗糙,可以自己再优化。
在这里插入图片描述
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/dc3ef865f42e43c8aa8ad68f30df64ad.p在这里插入图片描述
ng#pic_center)
代码`在这里插入代码片



课表


	<view class="week-box">
		<button class="week-button week-button-left" size="small" @click="subWeekNumber(year,weekNumber)">
			<u-icon color="rgba(235, 101, 25, 1)" name="play-left-fill" size="30"></u-icon>
		</button>
		<button class="week-view" @click="open">
			{{year+'第'+weekNumber+'周'}}
		</button>
		<button class="week-button week-button-right" size="small" @click="addWeekNumber(year,weekNumber)">
			<u-icon color="rgba(235, 101, 25, 1)" name="play-right-fill" size="30"></u-icon>
		</button>
	</view>
	<view class="view_H">
		<view id="demo1" class="scroll-view-item_H " :class="{ 'scroll-view-item_H-selected': currentIndex ===1  }"
			@click="submitDate(1,weekDateList[0].dateFull)">
			<view class="scroll-view-H-text">
				<text>{{weekDateList[0].date}}</text>
				<text>周一</text>
			</view>

		</view>
		<view id="demo2" class="scroll-view-item_H " :class="{ 'scroll-view-item_H-selected': currentIndex ===2  }"
			@click="submitDate(2,weekDateList[1].dateFull)">
			<view class="scroll-view-H-text">
				<text>{{weekDateList[1].date}}</text>
				<text>周二</text>
			</view>
		</view>
		<view id="demo3" class="scroll-view-item_H " :class="{ 'scroll-view-item_H-selected': currentIndex ===3.  }"
			@click="submitDate(3,weekDateList[2].dateFull)">
			<view class="scroll-view-H-text">
				<text>{{weekDateList[2].date}}</text>
				<text>周三</text>
			</view>
		</view>
		<view id="demo4" class="scroll-view-item_H " :class="{ 'scroll-view-item_H-selected': currentIndex ===4  }"
			@click="submitDate(4,weekDateList[3].dateFull)">
			<view class="scroll-view-H-text">
				<text>{{weekDateList[3].date}}</text>
				<text>周四</text>
			</view>
		</view>
		<view id="demo5" class="scroll-view-item_H " :class="{ 'scroll-view-item_H-selected': currentIndex ===5  }"
			@click="submitDate(5,weekDateList[4].dateFull)">
			<view class="scroll-view-H-text">
				<text>{{weekDateList[4].date}}</text>
				<text>周五</text>
			</view>
		</view>
		<view id="demo6" class="scroll-view-item_H " :class="{ 'scroll-view-item_H-selected': currentIndex ===6  }"
			@click="submitDate(6,weekDateList[5].dateFull)">
			<view class="scroll-view-H-text">
				<text>{{weekDateList[5].date}}</text>
				<text>周六</text>
			</view>
		</view>
		<view id="demo7" class="scroll-view-item_H " :class="{ 'scroll-view-item_H-selected': currentIndex ===0  }"
			@click="submitDate(0,weekDateList[6].dateFull)">
			<view class="scroll-view-H-text">
				<text>{{weekDateList[6].date}}</text>
				<text>周日</text>
			</view>
		</view>
	</view>
	<view>
		<uni-calendar ref="calendar" :multiple="false" class="uni-calendar--hook" :clear-date="true"
			:date="info.date" :insert="info.insert" :lunar="info.lunar" :startDate="info.startDate"
			:endDate="info.endDate" :range="info.range" @confirm="confirm" />
	</view>
	<!-- <view>
		<scroll-view class="scroll-view_H" scroll-x="true" scroll-left="120">
			<view id="demo1" class="scroll-view-item_H ">
				<view class="scroll-view-H-text">
					<text>1月20</text>
					<text>周一</text>
				</view>

			</view>
			<view id="demo2" class="scroll-view-item_H ">
				<view class="scroll-view-H-text">
					<text>1月21日</text>
					<text>周二</text>
				</view>
			</view>
			<view id="demo3" class="scroll-view-item_H ">
				<view class="scroll-view-H-text">
					<text>1月22日</text>
					<text>周三</text>
				</view>
			</view>
			<view id="demo4" class="scroll-view-item_H ">
				<view class="scroll-view-H-text">
					<text>1月23日</text>
					<text>周四</text>
				</view>
			</view>
			<view id="demo5" class="scroll-view-item_H ">
				<view class="scroll-view-H-text">
					<text>1月24日</text>
					<text>周五</text>
				</view>
			</view>
			<view id="demo6" class="scroll-view-item_H ">
				<view class="scroll-view-H-text">
					<text>1月25日</text>
					<text>周六</text>
				</view>
			</view>
			<view id="demo7" class="scroll-view-item_H ">
				<view class="scroll-view-H-text">
					<text>1月26日</text>
					<text>周日</text>
				</view>
			</view>
		</scroll-view>
	</view> -->
	<view class="">
		<uni-section class="mb-10" title="今日课程"></uni-section>
	</view>
	<view v-if="classScheduleList.length>0" class="steps-box" v-for="(item,index) in classScheduleList"
		:key="index">
		<view class="steps-y">
			<u-icon name="clock" color="rgba(166, 166, 166, 1)" size="24"></u-icon>
			<p><u-icon class="rotate-90" name="more-dot-fill" color="rgba(166, 166, 166, 1)" size="24"></u-icon>
			</p>
			<p><u-icon class="rotate-90" name="more-dot-fill" color="rgba(166, 166, 166, 1)" size="24"></u-icon>
			</p>
			<p><u-icon class="rotate-90" name="more-dot-fill" color="rgba(166, 166, 166, 1)" size="24"></u-icon>
			</p>
			<p><u-icon class="rotate-90" name="more-dot-fill" color="rgba(166, 166, 166, 1)" size="24"></u-icon>
			</p>
			<p><u-icon class="rotate-90" name="more-dot-fill" color="rgba(166, 166, 166, 1)" size="24"></u-icon>
			</p>
		</view>
		<view class="steps-time">
			<p>{{extractTime(item.startTime)}}</p>
			<p>-</p>
			<p>{{extractTime(item.endTime)}}</p>
		</view>
		<view class="steps-card">
			<uni-card :is-shadow="true" style="width: 540rpx;">
				<view class="card-tile">
					<view class="card-tile-left">
						<text>{{item.studentName}}</text>
					</view>
					<view class="card-tile-right">
						<image src="../../static/home/teacher.png" style="width: 40rpx; height: 40rpx;"></image>
						<text>{{item.teacherName}}</text>
					</view>
				</view>
				<view class="card-body">
					<text>课程:</text>
					<text style="color: rgba(13, 13, 13, 1);">{{item.bookName}}</text>
				</view>
				<view class="card-bottom">
					<view class="switch-box">
						<text style="margin-right: 15rpx;">老师就位</text>
						<view class="" @click="teacherSwitchClick(item.disabledTeacher)">
							<u-switch v-model="item.checkedTeacher" size="20" :disabled="item.disabledTeacher"
								@change="changeTeacher(item.id,1)" active-color="rgba(235, 101, 25, 1)"
								inactive-color="rgba(222, 222, 222, 1)"></u-switch>
						</view>
					</view>
					<view class="switch-box">
						<text style="margin-right: 15rpx;">学生就位</text>
						<view class="" @click="studentSwitchClick(item.disabledStudent)">
							<u-switch v-model="item.checkedStudent" size="20" :disabled="item.disabledStudent"
								@change="changesSudent(item.id,0)" active-color="rgba(235, 101, 25, 1)"
								inactive-color="rgba(222, 222, 222, 1)"></u-switch>
						</view>

					</view>
				</view>
			</uni-card>
		</view>
	</view>
	<view class=""  v-if="classScheduleList.length<=0">
		<u-empty text="暂无数据" mode="list" icon="../../static/数据为空.png">
			
		</u-empty>
	</view>
</view>
  • 7
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值