提交 e1f3429f authored 作者: 王鹏飞's avatar 王鹏飞

updates

上级 42cbcc3c
......@@ -23,7 +23,7 @@ const studyStatus = (progress: number) => {
</p>
<p class="t2">
<span>{{ data.course_chapters.big_total }}章节</span>
<span>{{ data.course_chapters.small_total }}课时</span>
<span>{{ data.course_chapters.small_total }}小节</span>
</p>
<p class="t2">
<span>{{ data.pv }}人看过</span>
......@@ -45,8 +45,8 @@ const studyStatus = (progress: number) => {
display: flex;
}
.course-item-pic {
width: 1.6rem;
height: 1.9rem;
width: 1.8rem;
height: 1.4rem;
border-radius: 0.1rem;
overflow: hidden;
object-fit: cover;
......
<script lang="ts">
export default {
data() {
return {
max: 60,
hasMore: false,
isOpen: false
}
},
computed: {
classes() {
return {
'has-more': this.hasMore && !this.isOpen
}
}
},
methods: {
init() {
const height = this.$refs.box.offsetHeight
this.hasMore = height > this.max
},
toggle() {
this.isOpen = !this.isOpen
}
},
mounted() {
this.init()
}
}
</script>
<template>
<div>
<div ref="box" :class="classes">
<slot></slot>
</div>
<div class="block-control" @click="toggle" v-if="hasMore">
<template v-if="isOpen"> <i class="el-icon-caret-top"></i><span>收起</span> </template>
<template v-else> <i class="el-icon-caret-bottom"></i><span>展开</span> </template>
</div>
</div>
</template>
<style lang="scss">
.block-control {
height: 20px;
display: flex;
align-items: center;
justify-content: center;
margin-top: 10px;
padding-top: 5px;
color: #d3dce6;
cursor: pointer;
border-top: 1px solid #eaeefb;
i {
font-size: 16px;
}
span {
display: none;
padding-left: 5px;
font-size: 12px;
}
&:hover {
color: #1f2f3d;
span {
display: block;
}
}
}
.has-more {
max-height: 40px;
overflow: hidden;
}
</style>
......@@ -35,7 +35,7 @@ const onClick = (data: IVideoItem) => {
</div>
<van-popup v-model:show="dialogVisible" round teleport="body" v-if="dialogVisible">
<div class="video-wrap" v-if="dialogVisible">
<video controls autoplay :src="videoUrl"></video>
<video controls autoplay playsinline :src="videoUrl"></video>
</div>
</van-popup>
</template>
......
......@@ -30,7 +30,7 @@ onMounted(() => {
<ul>
<li class="l1">
<span>{{ data.course_chapters.big_total }}章节</span>
<span>{{ data.course_chapters.small_total }}课时</span>
<span>{{ data.course_chapters.small_total }}小节</span>
</li>
<li class="l2">
<span>{{ data.pv }}人看过</span>
......@@ -50,7 +50,9 @@ onMounted(() => {
</div>
</div>
</div>
<div class="course-desc" v-html="data.course_represent"></div>
<div class="course-desc">
<div v-html="data.course_represent"></div>
</div>
</div>
<div class="course-bottom">
<div class="course-tips">如果你也是知识获得者,请晒出你的海报、说出你的感想,得到你的星星。</div>
......@@ -66,8 +68,8 @@ onMounted(() => {
display: flex;
}
.course-info-pic {
width: 2rem;
height: 2.4rem;
width: 2.5rem;
height: 2rem;
background-color: #fff;
border-radius: 0.2rem;
overflow: hidden;
......
<script setup lang="ts">
import { reactive } from 'vue'
import { useRouter } from 'vue-router'
import { createTeam } from '../api'
import AppUpload from '@/components/base/AppUpload.vue'
import { Toast } from 'vant'
const router = useRouter()
const form = reactive({ name: '', slogan: '', logo: '', brief: '' })
function onSubmit() {
createTeam(form).then(() => {
Toast.success('创建成功')
router.replace('/team')
})
}
</script>
......@@ -16,6 +21,11 @@ function onSubmit() {
<AppContainer title="团队创建" backgroundColor="#fff" headerAlign="center">
<van-form @submit="onSubmit">
<van-field v-model="form.name" placeholder="团队名称" :rules="[{ required: true, message: '请输入团队名称' }]" />
<van-field
v-model="form.slogan"
placeholder="团队口号"
:rules="[{ required: true, message: '请输入团队口号' }]"
/>
<van-field
v-model="form.brief"
type="textarea"
......
<script setup lang="ts">
import TeamList from '../components/TeamList.vue'
</script>
<template>
<AppContainer title="团队总榜">
<div class="team-header">
......@@ -15,9 +19,7 @@
<TeamList></TeamList>
</AppContainer>
</template>
<script setup lang="ts">
import TeamList from '../components/TeamList.vue'
</script>
<style lang="scss">
.team-header {
display: flex;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论