首页 > 解决方案 > VueJS - 将单独的组件加载到 vue 实例中

问题描述

在我的工作中,我目前正在重新设计我们的网络平台,包括将许多旧的javascript / jquery移动到VueJS中。

我有一个包含Vue组件的global.js文件,我们有一个包含Vue、Axios、Vuex、...vendor.js

现在我们的网站上有一个文本编辑器,这个编辑器有一个Vue版本。问题是这个文本编辑器非常大,几乎500kb用于生产。所以我在一个单独的文件中为这个编辑器创建了一个单独的组件,因为我们只需要在两个页面上使用它。

在此处输入图像描述

现在,由于我的全局Vue占据了整个页面,我无法将文本编辑器插入其中,因为您无法将Vue实例放入另一个Vue实例中。

有没有一种方法可以将编辑器保留为一个完全独立的文件,但在页面加载时以某种方式使用全局Vue实例?

我已经搜索了很多,但在任何地方都没有遇到过这个问题。也许不可能做到这一点。

标签: javascriptjqueryvue.jsvue-component

解决方案


您可以将编辑器的 CSS 修改为position:fixedposition:absolute并将其放入您的应用程序组件中。然后使用 av-if切换可见性。

您还可以使用 3rd 方对话框组件包装您的编辑器,将其包装到模式弹出窗口中。


另一个不相关的建议是,如果组件的尺寸很大,请使用延迟加载。


推荐阅读