yoho-action-sheet.vue 1.2 KB
<template>
  <YohoActionSheet ref="actionSheet" :full="true">
    <div class="content">
      <template v-if="list.length === 0">
        <Loading class="loading" :size="50"></Loading>
      </template>
      <Scroll ref="scroll" :options="scrollOptions">
        <div v-for="i in list" class="item">huangato{{i}}</div>
      </Scroll>
    </div>
  </YohoActionSheet>
</template>


<script>
import {Scroll, Loading} from 'cube-ui';

export default {
  name: 'ActionSheetPage',
  components: {
    Loading,
    Scroll
  },
  data() {
    return {
      list: [],
      scrollOptions: {
        bounce: false
      }
    };
  },
  methods: {
    click() {
      this.$refs.actionSheet.show();
      setTimeout(() => {
        this.initData();
        this.forceUpdate();
      }, 1000);
    },
    forceUpdate() {
      this.$refs.scroll.forceUpdate();
    },
    initData() {
      for (let i = 0; i < 100; i++) {
        this.list.push(i);
      }
    }

  }
};
</script>


<style>
  .content {
    width: 100%;
    height: 100vh;
    background-color: white;
  }

  .item {
    background-color: white;
  }

  .loading {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
  }

</style>