You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

119 lines
2.5 KiB
Vue

2 years ago
<template>
<view class="tui-footer-class tui-footer" :class="[fixed?'tui-fixed':'']" :style='{backgroundColor:backgroundColor}'>
<view class="tui-footer-link" v-if="navigate.length>0">
<block v-for="(item,index) in navigate" :key="index">
<navigator class="tui-link" hover-class="tui-link-hover" :hover-stop-propagation="true" :style="{color:(item.color || '#596d96'),fontSize:(item.size || 28)+'rpx'}"
:open-type="item.type" :url="item.url" :target="item.target" :delta="item.delta" :app-id="item.appid"
:path="item.path" :extra-data="item.extradata" :bindsuccess="item.bindsuccess" :bindfail="item.bindfail">{{item.text}}</navigator>
</block>
</view>
<view class="tui-footer-copyright" :style="{color:color,fontSize:size+'rpx'}">
{{copyright}}
</view>
</view>
</template>
<script>
export default {
name: "tuiFooter",
props: {
//type target url delta appid path extradata bindsuccess bindfail text color size
//链接设置 数据格式对应上面注释的属性值
navigate: {
type: Array,
default:function(){
return []
}
},
//底部文本
copyright: {
type: String,
default: "All Rights Reserved."
},
//copyright 字体颜色
color: {
type: String,
default: "#A7A7A7"
},
//copyright 字体大小
size: {
type: Number,
default: 24
},
//footer背景颜色
backgroundColor: {
type: String,
default: "transparent"
},
//是否固定在底部
fixed: {
type: Boolean,
default: true
}
},
methods: {
}
}
</script>
<style scoped>
.tui-footer {
width: 100%;
overflow: hidden;
padding: 30rpx 24rpx;
box-sizing: border-box;
}
.tui-fixed {
position: fixed;
z-index: 9999;
bottom: 0;
left: 0;
}
.tui-footer-link {
color: #596d96;
display: flex;
align-items: center;
justify-content: center;
font-size: 28rpx;
}
.tui-link {
position: relative;
padding: 0 18rpx;
line-height: 1;
}
.tui-link::before {
content: " ";
position: absolute;
right: 0;
top: 0;
width: 1px;
bottom: 0;
border-right: 1px solid #d3d3d3;
-webkit-transform-origin: 100% 0;
transform-origin: 100% 0;
-webkit-transform: scaleX(0.5);
transform: scaleX(0.5);
}
.tui-link:last-child::before {
border-right: 0 !important
}
.tui-link-hover {
opacity: 0.5
}
.tui-footer-copyright {
font-size: 24rpx;
color: #A7A7A7;
line-height: 1;
text-align: center;
padding-top: 16rpx;
padding-bottom:env(safe-area-inset-bottom);
}
</style>