【问题标题】:Asynchronously load a Vue plugin异步加载 Vue 插件
【发布时间】:2021-05-15 04:08:30
【问题描述】:

对于我的项目,我使用的是Buefy,并且我只在启动我的 Vue 应用程序之前安装我需要的插件。

import { Modal, Rate } from 'buefy'
Vue.use(Modal);
Vue.use(Rate);

但为了提高性能,我想异步加载这些插件。就像我正在为某些组件做的一样(参见下文),但我找不到如何使用 plugins 做到这一点。

await import('~/components/forms/FormContact.vue');

感谢您的帮助!

【问题讨论】:

  • 即使你找到了导入 JS 的方法,最大和最重的部分仍然是 CSS。找了几天,但发现 Buefy(/bulma) 的 CSS 是一个大块,您需要立即加载。
  • 确实,但我使用 PurgeCSS 来清理 CSS :)
  • 如果你能实现它,完美我的伙伴! :D

标签: vue.js plugins nuxt.js


【解决方案1】:

来自official docs

plugins 目录包含您希望在实例化根 Vue.js 应用程序之前运行的 JavaScript 插件。

我知道您可以在创建插件时自定义其行为,这要归功于 nuxtState 等一些帮助程序。
甚至更改behavior of the plugins,但最后,如果您查看lifecycle of Nuxt,它将始终在您可能实现的任何延迟加载逻辑之前加载。

所以,我很确定现在无法完成。至少,文档是朝着这个方向发展的。在 Discord 上询问它以获得官方确认可能会很有趣。

【讨论】:

    猜你喜欢
    • 2019-02-13
    • 1970-01-01
    • 2019-03-24
    • 2013-09-24
    • 2018-11-18
    • 2016-09-13
    • 1970-01-01
    • 2017-01-26
    • 1970-01-01
    相关资源
    最近更新 更多