params 和 query 的区别
query语法:
this.
r
o
u
t
e
r
.
p
u
s
h
(
p
a
t
h
:
"
地址
"
,
q
u
e
r
y
:
i
d
:
"
123
"
)
;
这是传递参数
t
h
i
s
.
router.push({path:"地址",query:{id:"123"}}); 这是传递参数 this.
router.push(path:"地址",query:id:"123");这是传递参数this.route.query.id; 这是接受参数
params语法:
this.
r
o
u
t
e
r
.
p
u
s
h
(
n
a
m
e
:
"
地址
"
,
p
a
r
a
m
s
:
i
d
:
"
123
"
)
;
这是传递参数
t
h
i
s
.
router.push({name:"地址",params:{id:"123"}}); 这是传递参数 this.
router.push(name:"地址",params:id:"123");这是传递参数this.route.params.id; 这是接受参数
1.写法的不同
2.接受方式不同
3.两者中query在刷新页面的时候参数不会消失 但params在刷新页面的时候参数会消失 可以考虑本地存储解决此问题
4.query传过来的参数会显示到地址栏中 而params传过来的参数不会显示到地址栏中 直白的来说 query相当于get请求,而params相当于post请求