关于Vue的一些小浅见,小问题与解决方法

1.Vue-router的重定向以及别名运用:

当我们打开index.html的时候,如果"/"路由下有需要展现子组件,那么就需要用到重定向或者别名

具体可查看vue-router文档中的“重定向或者别名”:https://router.vuejs.org/zh-cn/essentials/redirect-and-alias.html

下面是我在项目中的router配置demo:


这里是使用了alias别名的方法,使得当我们访问首页的时候,url是仍然保存{path:'/'}但是它的路由匹配已经是{path:'/searchPage'}了。


如果使用的是重定向,那么虽然访问首页的效果是一致的,但是首页的url将会是{path:'/searchPage'},造成貌似无首页路由的样子。当然,具体要用哪一个还是根据具体需要来决定。

2.vue中它的updated钩子使用起来和watch貌似很像?

updated钩子它的官方文档解释就是:组件更新之后,那么顾名思义,当前组件的数据发送变化的时候(任何一个当前组件data中的数据)就会触发updated。

watch呢它主要用于监听一个数据,基本用在一个数据影响多个数据的情况下,这里不得不提到computed计算属性了,它正好和watch相反,是一个数据受多个数据影响;watch监听数据如果不设置“deep”深度监听的话,是无法监听到对象内部的数据变化。

在触发的先后上,watch会先触发,因为watch触发是dom还未更新,updated实在组件更新之后,所以在dom更新后才会触发。

所以显而易见,updated一般用在比如用户信息的任何一个信息发生改变,就更新其他地方的信息等等,而watch则是当某个数据改变会触发某些事件或某些改变等等,那么我们用它们的时候就要根据具体需求而定咯。


3、vue中使用axios的post请求时候遇到400

其实遇到400很多时候就是语法上的错误,post和get在axios的封装中挂载的方式有不同,

我在用get的时候很正常没有报错,但当不改其他地方,只是换成post的时候传递参数,参数的挂载方式需要和get一样直接挂载到url之后,get方法会自动挂载,post方法却不会,所以这时候就需要用到一个npm包—qs。

qs的作用是把对象形式的参数转成类似get那样直接挂载到url之后的那个字符串,这样就和get的url没什么区别就可以了。


个人浅见,如有错误,请评论留言,感谢(不定期更新中...)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值