index.vue 423 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. <template>
  2. <view
  3. class="sticky"
  4. :style="{
  5. position: 'sticky',
  6. top: top2,
  7. zIndex
  8. }"
  9. >
  10. <slot></slot>
  11. </view>
  12. </template>
  13. <script>
  14. export default {
  15. props: {
  16. top: {
  17. type: Number,
  18. default: 0
  19. },
  20. zIndex: {
  21. type: Number,
  22. default: 99
  23. }
  24. },
  25. computed: {
  26. top2() {
  27. let t = "0px";
  28. // #ifdef H5
  29. t = "44px";
  30. // #endif
  31. return `calc(${t} + ${this.top}rpx)`;
  32. }
  33. }
  34. };
  35. </script>