router-view 加载最佳实践

8 阅读1分钟
<template>

    <router-view :style="contentStyle" @loaded="contentLoaded" />
</template>

<script>
  computed: {
    contentStyle() {
      const { loaded } = this;
      return { visibility: loaded ? 'visible' : 'hidden' };
    }
  }
  methods: {
    contentLoaded(callback) {
      requestAnimationFrame(() => {
        this.loaded = true;
        callback();
      });
    },
  }
  </script>