vue中如何获取url传递的参数

网上搜的一些方法都不管用
this.$geturlpara.getUrlKey("ip")
或者
getQueryString: function(name) {

    var url = this.$getConfig().bundleUrl;
    var resultStr = "";
    var tempArr = url.split(name + "=");
    if (tempArr.length > 1) {
      url = tempArr[1];
      tempArr = url.split("&");
      resultStr = tempArr[0];
    }
    return resultStr;
  },
  

他都不能解析$后边的?

阅读 17.9k
3 个回答

用vue router的时候可以直接从this.$route.query或者this.$route.params里面取

...
methods:{
...
   getUrlParam: function () {
        var name,value;
        var str=location.href; //取得整个地址栏
        var num=str.indexOf("?");
        str=str.substr(num+1); //取得所有参数   stringvar.substr(start [, length ]
    
        var arr=str.split("&"); //各个参数放到数组里
        for(var i=0;i < arr.length;i++){
            num=arr[i].indexOf("=");
            if(num>0){
                name=arr[i].substring(0,num);
                value=arr[i].substr(num+1);
                this[name]=value;
            }
        }
    } 
...
}

使用方法:
xxx.html?username=peter&id=1

var Request = this.getUrlParam()
Request.id // 1
Request.username // Peter

在weex中用的vue
取url用的是weex.config.bundleUrl

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进