这是导入和注册Vue组件的正确方法(延迟加载)吗?

时间:2018-01-07 17:50:07

标签: vue.js vuejs2

问题:

这是如何运作的?我理解正确吗?

方法1

当我们不使用任何延迟加载时,我们导入组件,然后全局注册,如下所示:

import contactForm from '@/components/contactForm'

Vue.component('contactForm', contactForm)

方法2

当我们使用Webpack 延迟加载时,我们导入组件,然后仍然全局注册,如下所示:

const contactForm = resolve => {
  require.ensure(['@/components/contactForm'], () => {
    resolve(require('@/components/contactForm'))
  })
}

Vue.component('contactForm', contactForm)

方法3

当我们使用Vue 延迟加载时,我们导入一个组件但注册它,就像那样:

Vue.component(
  'contactForm',
  () => import('@/components/contactForm')
)

方法4

如果你想延迟加载组件 - 路由,你可以像这样导入它们:

const contactForm = () => import('@/components/contactForm')

这是怎么回事?

另外,如何在方法3中添加“组”名称? (将多个组件分组为1个包)

0 个答案:

没有答案