vue不通過路由直接獲取url中參數的方法示例
前言
眾所周知vue中使用路由的方式設置url參數,但是這種方式必須要在路徑中附帶參數,而且這個參數是需要在vue的路由中提前設置好的。
相對來說,在某些情況下直接在url后面拼接?mid=100的方式傳遞參數更靈活,你不需要設置路由,只需要在url后拼接參數即可,但是這種方式就需要通過javascript獲取并提取url中的參數,通過傳統(tǒng)的方式直接在頁面中獲取是行不通的了,因為vue中是無法通過location.search()來獲取url問號之后的內容的。
當然,這個問題也有解決方法,就是把獲取參數的腳本代碼注冊成全局方法就可以了。下面話不多說了,來一看看詳細的方法示例吧。
示例代碼
第一步:創(chuàng)建utils.js文件,并保存到項目根目錄
export default{
getUrlKey:function(name){
return decodeURIComponent((new RegExp('[?|&]'+name+'='+'([^&;]+?)(&|#|;|$)').exec(location.href)||[,""])[1].replace(/\+/g,'%20'))||null;
}
}
第二步:在主js方法(main.js)中注冊全局方法
import utils from './utils' //獲取url參數 Vue.prototype.$utils=utils //注冊全局方法
第三步:vue文件中引用方法
let channel=this.$utils.getUrlKey("channel")
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關文章
關于Vue3路由push跳轉問題(解決Vue2this.$router.push失效)
這篇文章主要介紹了Vue3路由push跳轉問題(解決Vue2this.$router.push失效),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-07-07
el-select自定義指令實現觸底加載分頁請求options數據(完整代碼和接口可直接用)
某些情況下,下拉框需要做觸底加載,發(fā)請求,獲取option的數據,下面給大家分享el-select自定義指令實現觸底加載分頁請求options數據(附上完整代碼和接口可直接用),感興趣的朋友參考下吧2024-02-02

