}
.list {
&-enter-active,
&-leave-active {
transition: height 0.1s;
}
&-enter,
&-leave-to {
height: 0;
}
}
</style>
列表样式统一抽离出去
src/assets/scss/_list.scss
// list
@mixin flex-between() {
display: flex;
justify-content: space-between;
align-items: center;
}//ellipsis
@mixin ellipsis() {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
$border-color: #e5e5e5;
.g-list {
padding-left: 10px;
}
.g-list-item {
overflow: hidden;
@include flex-between();
height: 44px;
padding-right: 10px;
border-bottom: 1px solid $border-color;
color: #686868;
&:last-child {
border-bottom: none;
}
}
.g-list-text {
flex: 1;
line-height: 1.5;
@include ellipsis();
}
src/assets/scss/index.scss
@import 'icons';
@import 'list';*{
margin:0;
padding:0;
}
html,body{
// 必须设置,否则内容滚动效果无法实现
width:100%;
height:100%;
}
ul,li{
list-style:none;
}
a{
text-decoration: none;
color:#333;
}
确认框组件

src/components/comfirm/index.vue
<template>
<transition name="mine-confirm">
<div class="mine-confirm-wrapper" v-show="visible">
<div class="mine-confirm">
<div class="mine-confirm-title">{{title}}</div>
<div class="mine-confirm-msg">{{msg}}</div>
<div class="mine-confirm-btns">
<button class="mine-confirm-btn mine-confirm-cancel" @click="cancel">{{cancelBtnText}}</button>
<button class="mine-confirm-btn mine-confirm-ok" @click="confirm">{{confirmBtnText}}</button>
</div>
</div>
</div>
</transition>
</template><script>
export default {
name:'MineConfirm',
props:{
title:{
type:String,
default:''
},
msg:{
type:String,
default:'确定执行此操作吗?'
},
cancelBtnText:{
type:String,
default:'取消'
},
confirmBtnText:{
type:String,
default:'确定'
}
},
data(){
return{
visible:false
}
},
methods:{
show(){
this.visible=true;
},
hide(){
this.visible=false;
},
cancel(){
this.hide();










