前言
眾所周知vue中使用路由的方式設(shè)置url參數(shù),但是這種方式必須要在路徑中附帶參數(shù),而且這個(gè)參數(shù)是需要在vue的路由中提前設(shè)置好的。
相對(duì)來(lái)說(shuō),在某些情況下直接在url后面拼接?mid=100
的方式傳遞參數(shù)更靈活,你不需要設(shè)置路由,只需要在url后拼接參數(shù)即可,但是這種方式就需要通過(guò)javascript獲取并提取url中的參數(shù),通過(guò)傳統(tǒng)的方式直接在頁(yè)面中獲取是行不通的了,因?yàn)関ue中是無(wú)法通過(guò)location.search()
來(lái)獲取url問(wèn)號(hào)之后的內(nèi)容的。
當(dāng)然,這個(gè)問(wèn)題也有解決方法,就是把獲取參數(shù)的腳本代碼注冊(cè)成全局方法就可以了。下面話不多說(shuō)了,來(lái)一看看詳細(xì)的方法示例吧。
示例代碼
第一步:創(chuàng)建utils.js文件,并保存到項(xiàng)目根目錄
export default{ getUrlKey:function(name){ return decodeURIComponent((new RegExp('[?|&]'+name+'='+'([^&;]+?)(&|#|;|$)').exec(location.href)||[,""])[1].replace(/\+/g,'%20'))||null; } }
第二步:在主js方法(main.js)中注冊(cè)全局方法
import utils from './utils' //獲取url參數(shù) Vue.prototype.$utils=utils //注冊(cè)全局方法
第三步:vue文件中引用方法
let channel=this.$utils.getUrlKey("channel")
總結(jié)
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com