index.vue 828 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <template>
  2. <el-scrollbar
  3. class="cl-scrollbar"
  4. :view-style="[
  5. {
  6. 'overflow-x': 'hidden',
  7. width
  8. },
  9. viewStyle
  10. ]"
  11. :native="native"
  12. :wrap-style="wrapStyle"
  13. :wrap-class="wrapClass"
  14. :view-class="viewClass"
  15. :noresize="noresize"
  16. :tag="tag"
  17. >
  18. <slot></slot>
  19. </el-scrollbar>
  20. </template>
  21. <script>
  22. import { getBrowser } from "cl-admin/utils";
  23. const { plat } = getBrowser();
  24. export default {
  25. name: "cl-scrollbar",
  26. props: {
  27. native: Boolean,
  28. wrapStyle: Object,
  29. wrapClass: Object,
  30. viewClass: Object,
  31. viewStyle: Object,
  32. noresize: Boolean,
  33. tag: {
  34. type: String,
  35. default: "div"
  36. },
  37. direction: {
  38. type: String,
  39. default: "vertical" // auto, vertical, horizontal
  40. }
  41. },
  42. computed: {
  43. width() {
  44. return `calc(100% - ${plat == "iphone" ? "10px" : "0px"})`;
  45. }
  46. }
  47. };
  48. </script>