v-if
渲染的组件(因此并非总是需要),我们会这样导入它:
components: {
SideCategory: () => import(/* webpackChunkName: "SideCategory" */
'~/components/SideCategory.vue')
},
在最终构建中,我们为此组件提供了一个单独的JS块。我们只有在需要时才能得到它。所以一切都很好。
但我的问题是 - 是否有任何可能的弊端
这样的弊端? 我在我正在研究的项目中看到了几次,这些组件总是被懒散地导入(无)。我想知道是否可能会损害我们的表现?最好保留始终可见的正常进口的组件,然后让NUXT/WebPack完成工作吗?含义:
v-if
创建一堆小块损害了性能和核心网络生命力吗?
我想这可能会使情况稍差一些,但是单个组件的差异是要小的测量,因此我无法轻易验证它。
对组件进行IMPORT,但在模板中不使用它并没有重大影响运行时性能。 但是,由于最终JavaScript构建中包含该组件,因此略微增加了捆绑包大小。 如果您使用懒惰的加载(异步组件或动态导入),则不会加载未使用的组件,直到需要减少初始加载时间。