Я хотел бы знать, почему мой сайт не отображается на Edge?это разработано на JavaScript - PullRequest
1 голос
/ 05 июня 2019

Мне кто-то сказал, что это "..." не поддерживается в Edge. В следующем коде есть проблемы с совместимостью, и веб-сайт не отображается.

Вот код:

    //<< Mapping  hash
    hash = {
        route: hash[0].split(/\//)[0],
        params: hash[0].split(/\//).slice(1),
        queryParams: hash.length > 1 ? hash[1] : "",
    }

    hash.queryParams = hash.queryParams?hash.queryParams.split(/&/).reduce((a, c, i) => {
        return {...a,...{[c.split(/=/)[0]]: c.split(/=/)[1]}}
    }, {}):{}; // I got to fix this (Reynald - 12: 35 pm)
    //>>

Проблема специально на hash.queryParams = ....

Я собираюсь разделить полную функцию по ее свойству и каждому используемому в ней методу. Я знаю, что получу больше, поэтому у Эджа не возникнет проблем с чтением сайта.

hash.queryParams = hash.queryParams?hash.queryParams.split(/&/).reduce((a, c, i) => {
        return {...a,...{[c.split(/=/)[0]]: c.split(/=/)[1]}}
    }, {}):{}; // I got to fix this (Reynald - 12: 35 pm)```

Что-нибудь на данный момент. Вывод заключается в том, что веб-сайт должен отображаться из внешнего файла с JavaScript, который рисует веб-сайт в index.html. Я имею в виду, например, main.js, который рисует в index.html и main.js. имеет соединения для вызова каждой независимой страницы с каждым соответствующим файлом.

1 Ответ

0 голосов
/ 05 июня 2019

Кажется, что операторы распространения не поддерживаются в Edge для деструктуризации, так что кто бы вам ни сказал, это было правильно.Если вы не хотите заниматься переносом кода, вы можете попробовать Object.assign () .

Заменить return {...a,...{[c.split(/=/)[0]]: c.split(/=/)[1]}} на что-то вроде:

return Object.assign(a, {[c.split(/=/)[0]]: c.split(/=/)[1]})
...