提交 1aabd77c 编写于 作者: 杨广俊's avatar 杨广俊

选择组件

上级 10acd4dd
无法预览此类型文件
<template>
<section>
<article class="group-title">
<article v-show="showOrder" class="group-title-order">
<div @click="order(1)" class="group-title-order-item">
<span>全国</span><img src="../../images/lecturer/select-down.png"/>
</div>
<div @click="order(2)" class="group-title-order-item">
<span>全部等级</span><img src="../../images/lecturer/select-down.png"/>
</div>
<div @click="order(2)" class="group-title-order-item">
<span>全部科室</span><img src="../../images/lecturer/select-down.png"/>
</div>
</article>
</article>
</section>
</template>
<script>
import { mapGetters } from 'vuex'
export default {
data() {
return {
showOrderIndex: 1
}
},
props: {
groupTitle: {
type: String,
default: '课程'
},
isShowNum: {
type: Boolean,
default: true
},
groupNum: {
type: String,
default: "0"
},
showTitle: {
type: Boolean,
default: true
},
showOrder: {
type: Boolean,
default: true
}
},
computed: {
...mapGetters({
orderNum: 'orderNum'
})
},
watch: {
orderNum(val) {
this.showOrderIndex = 1
}
},
methods: {
toggle() {
this.showTitle = !showTitle
this.showOrder = !showOrder
},
order(index) {
this.showOrderIndex = index
this.$emit('order', index)
},
// resetShowOrderIndex(){
// this.showOrderIndex = 1
// }
}
}
</script>
<style lang="scss" scoped>
@import '../../style/mixin.scss';
.group-title {
display: flex;
flex-direction: row;
margin: 0 px2rem(25px);
&-order {
display: flex;
flex-direction: row;
width: px2rem(325px);
// padding: px2rem(10px) 0 px2rem(10px);
justify-content: space-between;
font-size: px2rem(13px);
&-item {
// display: inline-block;
// position: relative;
span {
font-size: px2rem(15px);
color: #333;
// margin-right: px2rem(30px);
}
img {
position: relative;
top: px2rem(2px);
left: px2rem(0px);
// top: px2rem(2px);
// left: px2rem(51px);
// padding-top: px2rem(10px);
height: px2rem(15px);
width: px2rem(15px);
}
}
}
.first-name {
// left: px2rem(63px);
}
.course-num {
left: px2rem(37px);
}
.hot-degree {
left: px2rem(25px);
}
.active {
color: #449284;
}
&-title {
padding: 0 px2rem(15px);
&-main {
margin-right: px2rem(6px);
font-size: px2rem(18px);
font-weight: 500;
color: #28344C;
}
&-sub {
font-size: px2rem(15px);
font-weight: 400;
color: #999;
}
}
}
</style>
<template>
<section>
<article class="group-title">
<article v-show="showOrder" class="group-title-order">
<div @click="order(1)" class="group-title-order-item">
<span>全国</span><img src="../../images/sousuo/sort-down.png"/>
</div>
<div @click="order(2)" class="group-title-order-item">
<span>全部等级</span><img src="../../images/sousuo/sort-down.png"/>
</div>
<div @click="order(2)" class="group-title-order-item">
<span>全部科室</span><img src="../../images/sousuo/sort-down.png"/>
</div>
</article>
</article>
</section>
</template>
<script>
import { mapGetters } from 'vuex'
export default {
data() {
return {
showOrderIndex: 1
}
},
props: {
groupTitle: {
type: String,
default: '课程'
},
isShowNum: {
type: Boolean,
default: true
},
groupNum: {
type: String,
default: "0"
},
showTitle: {
type: Boolean,
default: true
},
showOrder: {
type: Boolean,
default: true
}
},
computed: {
...mapGetters({
orderNum: 'orderNum'
})
},
watch: {
orderNum(val) {
this.showOrderIndex = 1
}
},
methods: {
toggle() {
this.showTitle = !showTitle
this.showOrder = !showOrder
},
order(index) {
this.showOrderIndex = index
this.$emit('order', index)
},
// resetShowOrderIndex(){
// this.showOrderIndex = 1
// }
}
}
</script>
<style lang="scss" scoped>
@import '../../style/mixin.scss';
.group-title {
margin-left: px2rem(15px);
display: flex;
flex-direction: row;
&-order {
display: flex;
flex-direction: row;
padding: px2rem(10px) 0 px2rem(10px);
font-size: px2rem(13px);
&-item {
display: inline-block;
// position: relative;
span {
// margin-right: px2rem(30px);
}
img {
position: relative;
top: px2rem(3px);
left: px2rem(0px);
// top: px2rem(2px);
// left: px2rem(51px);
// padding-top: px2rem(10px);
height: px2rem(15px);
width: px2rem(15px);
}
}
}
.first-name {
// left: px2rem(63px);
}
.course-num {
left: px2rem(37px);
}
.hot-degree {
left: px2rem(25px);
}
.active {
color: #449284;
}
&-title {
padding: 0 px2rem(15px);
&-main {
margin-right: px2rem(6px);
font-size: px2rem(18px);
font-weight: 500;
color: #28344C;
}
&-sub {
font-size: px2rem(15px);
font-weight: 400;
color: #999;
}
}
}
</style>
......@@ -3,20 +3,13 @@
<article class="group-title">
<article v-show="showOrder" class="group-title-order">
<div @click="order(1)" class="group-title-order-item">
<span>按名首字母</span>
<img class="first-name" src="../../images/sousuo/sort-down.png"/>
<span>全国</span><img src="../../images/lecturer/select-down.png"/>
</div>
<div @click="order(2)" class="group-title-order-item">
<span>最新课程</span>
<img src="../../images/sousuo/sort-down.png"/>
<span>全部等级</span><img src="../../images/lecturer/select-down.png"/>
</div>
<div @click="order(3)" class="group-title-order-item">
<span :class="{'active': showOrderIndex === 3}">资源数</span>
<img class="course-num" src="../../images/sousuo/sort-down.png" v-show="showOrderIndex === 3"/>
</div>
<div @click="order(4)" class="group-title-order-item">
<span :class="{'active': showOrderIndex === 4}">热门</span>
<img class="hot-degree" src="../../images/sousuo/sort-down.png" v-show="showOrderIndex === 4"/>
<div @click="order(2)" class="group-title-order-item">
<span>全部科室</span><img src="../../images/lecturer/select-down.png"/>
</div>
</article>
</article>
......@@ -82,30 +75,38 @@ export default {
<style lang="scss" scoped>
@import '../../style/mixin.scss';
.group-title {
margin-left: px2rem(15px);
display: flex;
flex-direction: row;
margin: px2rem(4px) px2rem(25px) px2rem(6px);
&-order {
display: flex;
flex-direction: row;
padding: px2rem(10px) 0 px2rem(10px);
width: px2rem(325px);
// padding: px2rem(10px) 0 px2rem(10px);
justify-content: space-between;
font-size: px2rem(13px);
&-item {
position: relative;
// display: inline-block;
// position: relative;
span {
margin-right: px2rem(30px);
font-size: px2rem(15px);
color: #333;
// margin-right: px2rem(30px);
}
img {
position: absolute;
top: px2rem(2px);
left: px2rem(51px);
height: px2rem(15px);
width: px2rem(15px);
position: relative;
top: px2rem(1px);
left: px2rem(1px);
// top: px2rem(2px);
// left: px2rem(51px);
// padding-top: px2rem(10px);
height: px2rem(11px);
width: px2rem(11px);
}
}
}
.first-name {
left: px2rem(63px);
// left: px2rem(63px);
}
.course-num {
left: px2rem(37px);
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册