欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue如何清除地址欄參數(shù)

 更新時間:2022年08月31日 09:41:31   作者:我是關(guān)小花  
這篇文章主要介紹了vue如何清除地址欄參數(shù),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

vue清除地址欄參數(shù)

第一種:

this.$router.push({ query: {} });

第二種:

let path = this.$route.path; //先獲取路由路徑
this.$router.push(path); //再跳轉(zhuǎn)路由路徑,query參數(shù)沒帶過去,所以被清除了

獲取地址欄參數(shù)并且截取

今天寫項目遇到這樣一個問題,因為我是單獨(dú)寫的三個頁面,我那個頁面獲取數(shù)據(jù)是要獲取到上個頁面?zhèn)鬟^來的參數(shù)才能進(jìn)行請求,因為剛開始寫參數(shù)是直接寫成固定死的了

然后我就在想,肯定要獲取到當(dāng)前頁面的url地址,這樣后邊才能截取url地址中的參數(shù),代碼如下

     var url = window.location.href; //獲取地址欄路徑
     var temp1 = url.split('?');//對url地址進(jìn)行分割
     var pram = temp1[1];
     var keyValue = pram.split("&");
     var obj = {};
     for (var i = 0; i < keyValue.length; i++) {//循環(huán)分割掛過后的地址
       var item = keyValue[i].split("=");
       var key = item[0];
       var value = item[1];
       obj[key] = value;
     }
     console.log(url);
     console.log(pram);
     console.log(keyValue);
     consile.log(obj)//obj就是我么分割后從上個頁面?zhèn)鬟^來數(shù)據(jù)的對象
     console.log(obj.orgCode);
     this.orgCode = obj.orgCode;//對data里面定義的orgCode進(jìn)行賦值

我是要取到上面代碼中obj對象里面的orgCode參數(shù),然后在接口中進(jìn)行拼接參數(shù)就可以了

然后這個寫完我又遇到了一個問題,如果從上個頁面沒傳過來參數(shù)的話,瀏覽器會報split的錯。因為后邊沒有參數(shù)進(jìn)行分割,如下圖

后來我又想到一個方法,我們可以在進(jìn)行split分割的時候進(jìn)行判斷,有參數(shù)的話就進(jìn)行分割,沒傳過來參數(shù)就return false 返回一個false值 代碼如下:

//在methods里面定義一個方法
 getQueryString(variable) {
      var index = window.location.href.indexOf("?");//獲取地址欄路徑并進(jìn)行分割
      var query = window.location.href.substr(
        index + 1,
        window.location.href.length
      );
      var vars = query.split("&");
      for (var i = 0; i < vars.length; i++) {
        var pair = vars[i].split("=");
        if (pair[0] == variable) {
          return pair[1];
        }
      }
      return false;//如果沒有參數(shù)就返回false 值,就不會出現(xiàn)上邊報錯的情況了
    },

然后我們需要在上邊調(diào)用這個方法

  created() {
    //調(diào)用請求接口并獲取url的orgCode參數(shù)
    this.Getactiononlad(this.getQueryString("orgCode"));
  },

上面代碼 this.Getactiononlad是我定義的請求接口方法

在后邊直接在調(diào)用獲取url地址的方法

orgCode就是要獲取的參數(shù)

 methods: {
    Getactiononlad(orgCode) {//定義請求接口的方法
    //要把orgCode傳在方法里面
      getObjectInfo(orgCode, this.ApprovalUserName)//getObjectInfo是在api封裝好的接口
        .then((res) => {
          if (res.isSuccess == true) {
            if (res.data.list.length > 0) {
              this.$toast("請求成功");
              this.iSshownotFiled = false;
              res.data.list.forEach((element) => {
                this.Ordersubmitlist.push(element);
              });
            } else {
              this.iSshownotFiled = true;
            }
          } else {
            this.$$toast("請求出現(xiàn)異常");
          }
        })
        .catch((error) => {
          this.$toast(error.message);
        });
    },
    }

這個時候我們看一下效果

它已經(jīng)不報錯了,顯示沒有數(shù)據(jù)

如果我們傳orgCode參數(shù)的話,效果圖如下

這樣通過上個頁面url傳過來的orgCode值,我們也不會報錯,也顯示數(shù)據(jù)拉

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論