【问题标题】:Nuxt Loader - Throttle for Custom LoaderNuxt Loader - 自定义加载程序的节流阀
【发布时间】:2024-01-02 15:07:01
【问题描述】:

我正在为我的项目使用自定义加载器组件,我的 nuxt 配置如下所示:

loading: '~/components/common/loading.vue'

问题是这个组件不会限制几毫秒,并且随着每次页面更改,它会闪烁并导致糟糕的用户体验。有什么方法可以像我们通常在throttle: 200 对象中添加默认组件一样添加节流阀,例如loading

loading: { throttle: 200 }

由于我的加载选项没有对象,而是有一个指向我的自定义加载组件的字符串/路径,所以我不确定在这里做什么。

参考:https://nuxtjs.org/docs/2.x/features/loading

【问题讨论】:

  • 您是否尝试在loading.vue 组件中使用throttle?或者也许在配置中传递loading: { name: '~/components/common/loading.vue', throttle: 200 }
  • 您好,很遗憾,这些选项不起作用。传递loading: { name: '~/components/common/loading.vue', throttle: 200 } 导致加载程序根本不显示,即使设置了throttle: 0。在loading.vue 中设置throttle 没有任何区别。

标签: vue.js vue-component nuxt.js loader


【解决方案1】:

您可以在自定义加载程序组件~/components/common/loading.vuestart() 方法中添加一个setTimeout。

methods: {
   start() {      
     setTimeout(() => {
        this.loading = true;
     }, 2000);           
   },
   finish() { ... }
}

【讨论】:

    最近更新 更多