今日报错

72 阅读1分钟

1. 两种导入的区别

第一种导入是在 vue-router 库里面,导入实体变量 第二种是在本地配置好的文件里面,导出router

image.png

2. 关于箭头函数 代码块和 字面量的不同理解

image.png 这是因为在 JavaScript 中,如果箭头函数的 函数体 是一个对象字面量(如 { cities: [] }),你必须使用圆括号包裹对象字面量。否则,JavaScript 会将大括号 {} 误认为是 代码块的开始,而不是对象字面量的开始。

例子解释:
javascript
() => ({ cities: [] })
  • () 表示这是一个没有参数的箭头函数。
  • => 是箭头函数的符号。
  • ({ cities: [] }) 是该箭头函数的 返回值,即一个对象字面量 { cities: [] }。为了让 JavaScript 明确知道它是返回一个对象,而不是一个代码块,我们需要用圆括号将对象字面量包裹起来。

为什么需要圆括号?

没有圆括号,JavaScript 会错误地解析大括号 {} 为一个 代码块,并认为 cities: [] 是该代码块中的一条语句,导致语法错误。例如:

javascript
// 错误的写法:没有圆括号包裹对象字面量
() => { cities: [] }  // 这将被解释为一个代码块,语法错误

这种写法等价于:

javascript
() => {
  return cities: []  // 这里的 cities: [] 会被当作语法错误
}

总结:

  • ({ cities: [] })  中的圆括号是必须的,用来明确告知 JavaScript 你是要返回一个对象,而不是开始一个代码块

3. 关于路由的问题,这里这两个是并排的关系

image.png router-view 和 router-link 这两个需要并排