diff --git a/mock/utils.js b/mock/utils.js index 5bd2d2c9..f909a293 100644 --- a/mock/utils.js +++ b/mock/utils.js @@ -3,19 +3,21 @@ * @returns {Object} */ function param2Obj(url) { - const search = url.split('?')[1] + const search = decodeURIComponent(url.split('?')[1]).replace(/\+/g, ' ') if (!search) { return {} } - return JSON.parse( - '{"' + - decodeURIComponent(search) - .replace(/"/g, '\\"') - .replace(/&/g, '","') - .replace(/=/g, '":"') - .replace(/\+/g, ' ') + - '"}' - ) + const obj = {} + const searchArr = search.split('&') + searchArr.forEach(v => { + const index = v.indexOf('=') + if (index !== -1) { + const name = v.substring(0, index) + const val = v.substring(index + 1, v.length) + obj[name] = val + } + }) + return obj } /** diff --git a/vue.config.js b/vue.config.js index aabbf651..6733dd50 100644 --- a/vue.config.js +++ b/vue.config.js @@ -53,7 +53,7 @@ module.exports = { // config.plugins.delete('preload') // when there are many pages, it will cause too many meaningless requests - config.plugins.delete('prefetch') // + config.plugins.delete('prefetch') // set svg-sprite-loader config.module