Как издеваться над window.location.search? - PullRequest
2 голосов
/ 16 января 2020

Я пытаюсь получить параметры из URL, но я не могу сказать, работает ли он, потому что console.log(window.location.search) на localhost: 3000 дает мне <empty string> в качестве значения.

Я пытался насмехаться над ним как это, но он не возвращает то же самое, что и window.location.search

const url = 'https://www.google.com/search?client=firefox-b-1-d&q=query+string

const queryString = url.search

console.log(queryString)  // function search()

Есть ли способ локально высмеивать поведение window.location.search, чтобы я мог убедиться, что я получаю данные Мне нужно, чтобы приложение было развернуто?

Ответы [ 3 ]

2 голосов
/ 16 января 2020

Вы можете использовать объект URL следующим образом:

const url = new URL('https://www.google.com/search?client=firefox-b-1-d&q=query+string');

const queryString = url.search

console.log(queryString)  // '?client=firefox-b-1-d&q=query+string'
0 голосов
/ 16 января 2020

Это функция, которая разбирает текст на URL, тогда ваш код будет работать

function parseURL(url) {
    var parser = document.createElement('a'),
        searchObject = {},
        queries, split, i;
    // Let the browser do the work
    parser.href = url;
    // Convert query string to object
    queries = parser.search.replace(/^\?/, '').split('&');
    for( i = 0; i < queries.length; i++ ) {
        split = queries[i].split('=');
        searchObject[split[0]] = split[1];
    }
    return {
        protocol: parser.protocol,
        host: parser.host,
        hostname: parser.hostname,
        port: parser.port,
        pathname: parser.pathname,
        search: parser.search,
        searchObject: searchObject,
        hash: parser.hash
    };
}

const url = parseURL('https://www.google.com/search?client=firefox-b-1-d&q=query+string')
const queryString = url.search
console.log(queryString)  // function search()
0 голосов
/ 16 января 2020

const urlcheck = new URLSearchParams (window.location.search); const querystringVal = urlParams.get ('parameter');

Пожалуйста, проверьте это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...