作为一个前端,组件之间的传值是必不可少的,当然有好多种方式,这分享一种通过url路径通过传参的方式来进行组件之间的传值
例如:https://www.baidu.com/s?wd=博客园&code='1'
这个例子中wd和code作为参数来携带值去跳转里一个页面,而在另一个页面去获取就可以了。当然一般的地址中携带参数是需要编码处理过的,当然在咱们获取值得时候是需要解码的。
这种编码方式有两种吧。我知道的有两种:
encodeURIComponent(url) 和 decodeURI(url)
解码:
decodeURIComponent(url)和 encodeURL(url)
如何来过去参数呢,这里提供一种方法
const queryParam = (key) => { let reg = new RegExp('(^|&)' + key + '=([^&]*)(&|$)') let result = window.location.search.substr(1).match(reg) return result ? decodeURIComponent(result[2]) : null }
key值是url上的参数,例如上面那个例子中如果获取wd的值那么key值为wd。
queryParam(wd)
个人感觉地址传值是一种非常实用的方法,当然如果涉及到token那么最好别用这种方法。