先纠正一下,这个问题的标题和内容不是一个问题,这里应该是涉及到两个知识点:

  • 组件的 name
  • 路由的 name

下面我分别解释一下。

组件的 name

参考链接:https://router.vuejs.org/zh/guide/essentials/named-routes.html

组件的 name 是组件对象中的一个配置选项,类似于下面这样:

export default {name: 'App',data () {return {}},methods: {},...
}

允许组件模板递归地调用自身。注意,组件在全局用 Vue.component() 注册时,全局 ID 自动作为组件的 name。

指定 name 选项的另一个好处是便于调试。有名字的组件有更友好的警告信息。另外,当在有 vue-devtools,未命名组件将显示成 <AnonymousComponent>,这很没有语义。通过提供 name 选项,可以获得更有语义信息的组件树。

路由的 name

参考链接:https://router.vuejs.org/zh/guide/essentials/named-routes.html

路由的 name 是路由对象中的一个配置选项,类似于下面这样:

const router = new VueRouter({routes: [{path: 'foo',name: 'foo'component: Foo}]
})

假设我们有一个动态路由:

const router = new VueRouter({routes: [{path: '/user/:userId',component: User}]
})

如果你要使用 JavaScript 跳转到这个动态路由,则你需要这样写:

this.$router.push('/user/' + 用户ID)

如果是在模板中进行路由导航,那就是这样的:

<router-link :to="'/user' + 用户ID">User</router-link>

以上的方式虽然简单粗暴,但是通过拼接字符串得到完整路由路径进行导航不太直观。

所以更好的方式就是给路由配置对象起一个名字,就像下面这样,这个 name 和 path 没有任何关系,它就是一个代号,需要注意的是路由的 name 不能重复。

const router = new VueRouter({routes: [{path: '/user/:userId',name: 'user',component: User}]
})

现在你可以这样处理路由导航:

router.push({ name: 'user', params: { userId: 123 }})
<router-link :to="{ name: 'user', params: { userId: 123 }}">User</router-link>

所以结论就是:无论是否需要使用路由的 name,都建议给它写上,当你需要的时候就非常有用了,这是一个建议的做法。

前端学习(2411):name属性的作用相关推荐

  1. 自学web前端怎么学?web前端学习路线css属性

    自学web前端技术,如果才能找到一份web前端的工作.按照现在的招聘标准来看,无论你去哪个公司面试,你只需要满足他们公司的需求就可以.找到一份web前端工作需要掌握的内容如下: 首先是html,css ...

  2. html当中的属性cellspacing,table标签cellspacing属性的作用及使用方法

    在html中制作表格,需要用到table标签,而该标签中的cellspacing属性可设置单元格间距,下面我们就一起学习一下cellspacing属性的作用及使用方法. cellspacing属性指定 ...

  3. html中cellpadding属性作用,table标签cellpadding属性的作用及使用方法

    在html中制作表格,需要用到table标签,而该标签中的cellpadding属性可设置单元格边距大小,下面我们就一起学习一下cellpadding属性的作用及使用方法. cellpadding属性 ...

  4. 从零开始学前端:css3新属性scss和less --- 今天你学习了吗?(CSS:Day22)

    从零开始学前端:程序猿小白也可以完全掌握!-今天你学习了吗?(CSS) 复习:从零开始学前端:形变 - 今天你学习了吗?(CSS:Day21) 文章目录 从零开始学前端:程序猿小白也可以完全掌握!-今 ...

  5. 从零开始学前端:CSS字体属性和文本属性 --- 今天你学习了吗?(CSS:Day08)

    从零开始学前端:程序猿小白也可以完全掌握!-今天你学习了吗?(CSS) 复习:从零开始学前端:CSS引入 - 今天你学习了吗?(CSS:Day07) 文章目录 从零开始学前端:程序猿小白也可以完全掌握 ...

  6. HTML 前端学习(4)—— CSS 属性相关

    HTML 前端学习(4)-- CSS 属性相关 设置长宽 块级标签设置长宽 行内标签设置长宽 代码演示 演示结果 字体属性 字体样式 字体大小 字体颜色 字体粗细 代码演示 演示结果 文字属性 对齐方 ...

  7. 从零开始前端学习[50]:js操作标签属性,读写属性标签

    js操作标签属性 标签属性 js下操作标签属性 提示: 博主:章飞_906285288 博客地址:http://blog.csdn.net/qq_29924041 前端的一些标签属性 标签属性:通俗的 ...

  8. 浏览器各个属性的作用

    作为前端程序员不可避免的会和浏览器打交道,所以要对浏览器的各个属性的作用进行了解,方便开发及调试,这里以谷歌浏览器为例进行简单的介绍.一是巩固对浏览器属性的认识,二是方便大家的学习. 首先打开谷歌浏览 ...

  9. web前端学习之HTML

    html标记语言是网页自动化测试所必须要掌握的,可以说是前端学习的基石,我都是在w3school上学的,所以就以此来讲.学习地址:http://www.w3school.com.cn/ HTML 指的 ...

  10. 零基础小白前端学习之初始CSS

    现在的互联网前端分为三层: HTML:超文本标记语言.从语义的角度描述页面结构 CSS:层叠样式表.从审美的角度负责页面样式 JS:Javascript.从交互的角度描述页面的行为 css它是一个很神 ...

最新文章

  1. Winform 绘制圆形的图片
  2. 中文字符ASCII码和NSString相互转换
  3. 原生ajax如何执行,原生ajax调用数据实例讲解
  4. 李宏毅 课程打包_按功能而不是按层打包课程
  5. 吐血整理:关于机器学习不可不知的15个概念
  6. android l camera no panorama,Android Camera从App层到framework层到HAL层的初始化过程
  7. springboot2.0入门(helloworld)
  8. oracle装载数据,如何在SqlLoader中装载日期型的数据
  9. Typora下载及使用
  10. 轻便型面部捕捉,一个APP就搞定!
  11. MATLAB突然打不开,窗口闪一下就退了,一种亲试解决方法:
  12. 青龙面板登陆去除二次验证
  13. 163vip邮箱全面体验测评分享
  14. 什么是智能会议平板?
  15. 红米2 com.android.phone,红米2手机(移动/联通/电信) 7.1 ROM 下载地址搬运(2017年3月10日更新)...
  16. 怎么修改PDF文档背景
  17. @keyup.enter.native不生效?看看@keyup.enter.native和@keyup.enter的区别和使用
  18. 英语CET6救命作文通用模板
  19. 面试指南(三):想跳槽,这些问题你会了吗?
  20. 如何将Mac文件添加到 iCloud 云盘的具体操作方法!

热门文章

  1. 判断一个js对象,是否具有某个属性
  2. 2016 年 ACM/ICPC 青岛区域赛 Problem C Pocky
  3. powerdesign相关
  4. Intellij idea 快键键
  5. [c++基本语法]——构造函数初始化列表
  6. 关于myeclipse打开jsp巨慢解决方案
  7. 发布一个jQuery插件:formStorage
  8. java jol原理_Java对象布局(JOL)实现过程解析
  9. oracle虚拟机字符集,更改虚拟机上的oracle字符集
  10. export mysql home_mysql的Linux下安装笔记