首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Vue Router上导入同名组件

如何在Vue Router上导入同名组件
EN

Stack Overflow用户
提问于 2017-08-18 17:09:25
回答 2查看 2.3K关注 0票数 2

我正在做一个VueJs项目,现在正在组织我的路由器记录。我已经意识到我可能有不同的组件具有相同的名称。如何导入它们并在路由记录中使用它们?如何在配置路由器时使其名称唯一?

代码语言:javascript
复制
import Vue from 'vue'
import Router from 'vue-router'
import AllUsers from '../components/Sales/AllUsers'
import AllUsers from '../components/Finance/AllUsers'
...
export default new Router({
routes: [
{
    path: '/', name: 'home', component: Home
},
{
    path: '/sales/users', name: 'sales-users', component: AllUsers
},
{
    path: '/finance/users', name: 'finance-users', component: AllUsers
}

我在这里使用了一个假设的示例(因为我也可以将组件称为SalesUsersFinanceUsers),但是您会同意组件有时确实具有相同的名称。假设我需要为每个路由记录指定组件,我该如何处理呢?

PS:对VueJS来说有点新手,所以欢迎关于改进和最佳实践的建议。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-08-18 17:14:33

由于您的导出是default格式的,因此您可以在导入过程中选择任何名称:

代码语言:javascript
复制
import Vue from 'vue'
import Router from 'vue-router'
import AllSalesUsers from '../components/Sales/AllUsers'
import AllFinanceUsers from '../components/Finance/AllUsers'
// ...

export default new Router({
  routes: [
    {
      path: '/', name: 'home', component: Home
    },
    {
      path: '/sales/users', name: 'sales-users', component: AllSalesUsers
    },
    {
      path: '/finance/users', name: 'finance-users', component: AllFinanceUsers
    }
  ]
})
票数 6
EN

Stack Overflow用户

发布于 2019-09-20 18:10:29

您还可以在定义管线时导入元件。

代码语言:javascript
复制
import Vue from 'vue'
import Router from 'vue-router'
...
export default new Router({
routes: [
{
    path: '/', name: 'home', component: Home
},
{
    path: '/sales/users',
    name: 'sales-users',
    component: ()=> import('../components/Sales/AllUsers')
},
{
    path: '/finance/users',
    name: 'finance-users',
    component: ()=> import('../components/Finance/AllUsers')
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45752819

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档