性能许多Vue.js组件的影响

时间:2018-05-22 11:25:50

标签: javascript performance vue.js vuejs2

我们正在使用Laravel和Vue.js,但去年代码有点乱。我们现在开始重写大部分内容,并正在讨论如何最好地解决它。

我们没有使用SPA,因此路线在Laravel中定义。由于存在一些复制/粘贴,我们现在想要在Vue.js模块中编写所有内容并将它们全部放在一个JS文件中。它现在有效,因为到目前为止我们只有大约10个组件,但考虑到整个重写,我们最终可能会有100个或更多组件。

问题是: 如果是100个组件被打包在一个JS文件中,Vue.js是否需要执行所有这些组件的代码,即使该页面仅使用例如其中10个,或者只是那些实际使用的组件执行的代码?

如果性能明智这是一个糟糕的选择,是否有另一种方法可以将每个组件放在一个大文件中(同时仍然保留Laravel路由)?

提前致谢:-)

1 个答案:

答案 0 :(得分:0)

本身没有性能差异,在同一个文件中有100个或10个组件。

不同之处在于,您要求用户的浏览器加载100个组件而不是10个组件。

如果您正在使用SPA,则拆分文件的代码效果很好,但如果您想在页面中使用Vue,那么它显然不太理想。

然而,您可以做的是将所有组件作为一个文件加载,并且在多个页面中使用它们的vue实例引用它们。这样,当您从一个页面转到另一个页面时,您不需要用户加载新的设置。

如果您希望实际提高性能,可以尽可能优化渲染,因为您会发现最明显的收益。一种方法是将组件转换为功能组件,如果您经常重新渲染大量组件,这会产生影响,但事实并非如此。