初始化代码
This commit is contained in:
79
uniapp/uni-app/components/fixed.vue
Normal file
79
uniapp/uni-app/components/fixed.vue
Normal file
@@ -0,0 +1,79 @@
|
||||
<template>
|
||||
<view>
|
||||
<view class="ui-fixed" :class="{'fixed-top':position=='top','fixed-bottom':position=='bottom'}"
|
||||
:style="{zIndex:zIndex}">
|
||||
<slot></slot>
|
||||
</view>
|
||||
<view :style="{height:height+'px'}"></view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'fixed',
|
||||
props: {
|
||||
position: {
|
||||
type: [String],
|
||||
default () {
|
||||
return 'top'
|
||||
}
|
||||
},
|
||||
zIndex: {
|
||||
type: Number,
|
||||
default () {
|
||||
return 999
|
||||
}
|
||||
},
|
||||
refresh: {
|
||||
type: Boolean,
|
||||
default () {
|
||||
return false
|
||||
}
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
height: uni.getSystemInfoSync().windowWidth * 100 / 750
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.setHeight();
|
||||
},
|
||||
onReady() {
|
||||
this.setHeight();
|
||||
},
|
||||
watch: {
|
||||
refresh(val) {
|
||||
console.log(val, "=======val")
|
||||
if (val) return
|
||||
this.setHeight()
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
setHeight() {
|
||||
var _this = this;
|
||||
var query = uni.createSelectorQuery().in(this);
|
||||
query.select('.ui-fixed').boundingClientRect(function(res) {
|
||||
_this.height = res.height;
|
||||
}).exec();
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
<style>
|
||||
.ui-fixed {
|
||||
position: fixed;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.fixed-top {
|
||||
top: 0;
|
||||
}
|
||||
|
||||
.fixed-bottom {
|
||||
bottom: 0;
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user