当你需要编码URL中的参数的时候,那么encodeURIComponent是最好方法。
var param = "http://www.cnblogs.com/season-huang/"; //param为参数
param = encodeURIComponent(param);
var url = "http://www.cnblogs.com?next=" + param;
console.log(url) //"http://www.cnblogs.com?next=http%3A%2F%2Fwww.cnblogs.com%2Fseason-huang%2F"
看到了把,参数中的 “/” 可以编码,如果用encodeURI肯定要出问题,因为后面的/是需要编码的。
axios请求方法封装:
api.js
import axios from 'axios'
import 'babel-polyfill'
import {
getSStore} form './mUtils'
import {
Loading} form 'element-ui
// 获取url中的指定参数
const getUrlParam = (name)=>{
// 构造一个含有目标参数的正则表达式对象
let reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
//匹配目标参数
let r = window.location.search.substr(1).match(reg);
if(r != null) return unescape(r[2]