1、query 和 params的区别
query
1.是拼接在url后面的参数。
2.参数在?后面,且参数之间用&符分隔
3.query相当于get请求,可以在地址栏看到参数
params
1.是路由的一部分。以对象的形式传递参数
2.使用params传参只能由name引入路由,如果写成path页面会显示警告,说参数会被忽略
3.params相当于post请求,参数不会再地址栏中显示
---------------------------------------------------------------------------------------------------------------------------------
1、query 传参配置的是 path,而 params 传参配置的是 name,在 params 中配置 path 无效
2、query 在路由配置不需要设置参数,而 params 必须设置
3、query 传递的参数会显示在地址栏中
4、params 传参刷新会无效,但是 query 会保存传递过来的值,刷新不变 ;
5、接收参数使用 this.$router 后面就是搭配路由的名称就能获取到参数的值
2、route与router的区别
$route:获取路由信息 指当前路由实例跳转到的路由对象
包括:
$route.path 字符串,等于当前路由对象的路径,会被解析为绝对路径,如/home/ews
$route.name 当前路由的名字,如果没有使用具体路径,则名字为空
$route.router 路由规则所属的路由器
$route.matchd 数组,包含当前匹配的路径中所包含的所有片段所对象的配置参数对
象
$route.query 对象,包含路由中查询参数的键值对。会拼接到路由 url 后面
$route.params 对象,含路有种的动态片段和全匹配片段的键值对,不会拼接到路由
的 url 后面
r o u t e r :获取路由整个实例指整个路由实例,可操控整个路由通过‘ router:获取路由整个实例 指整个路由实例,可操控整个路由 通过‘router:获取路由整个实例指整个路由实例,可操控整个路由通过‘router.push’往其中添加任意的路由对象 钩子函数等
3、Vue3带来了什么改变?
1.性能的提升
打包大小减少41%
初次渲染快55%, 更新渲染快133%
内存减少54%
2.源码的升级
使用Proxy代替defineProperty实现响应式
重写虚拟DOM的实现
3.Vue3可以更好的支持TypeScript
新的特性-Composition API(组合API)
4.readonly 与 shallowReadonly
readonly: 让一个响应式数据变为只读的(深只读)。
shallowReadonly:让一个响应式数据变为只读的(浅只读)。
应用场景: 不希望数据被修改时。
5. 你认为Vue.js有什么优势?
Vue.js的优点包括:
1- 非常轻量级, 在网页上加载速度很快
2- 可以使用模板或者单文件组件结构构建Realtime数据绑定
3- 组件化和模块化开发
4- 流畅的API,包括生命周期钩子
5- 易于学习和使用