Как получить элемент из json в консоли браузера и записать его, если условие выполнено - PullRequest
0 голосов
/ 18 мая 2019

Я ищу решение, как извлечь данные из vimeo url json и записать их, если условие истинно.Например, у меня есть диапазон идентификаторов видео, поэтому я хочу получить переменную json, например author: someauthor, а затем проверять каждый цикл, если author в json == мой автор.Если это правда, то напишите iframe в документе.Кто-нибудь знает, как это сделать?

for (i = 330463512; i < 330463516; i++) {

    fetch('https://vimeo.com/api/oembed.json?url=https://player.vimeo.com/video/${i}')
    .then(res => res.json())
    .then(console.log)

    if (json.element == "200") {
        document.write(`<iframe src="https://player.vimeo.com/video/${i}" width="640" height="640" frameborder="0" allowfullscreen=""></iframe>`);
    }   
}

1 Ответ

0 голосов
/ 19 мая 2019

Когда вы пишете:

    fetch('https://vimeo.com/api/oembed.json?url=https://player.vimeo.com/video/${i}')
    .then(res => res.json())
    .then(console.log)

В первом .then вы ловите возврат выборки, которая является обещанием, а затем выполняете функцию .json(), которая возвращает другое обещание.Таким образом, вы должны получить этот возврат в следующем .then и использовать его для входа и записи внутри него.То, что вы делаете сейчас, - это использование вне рамок.Вы должны использовать что-то вроде этого:

    for (i = 330463512; i < 330463516; i++) {

        fetch('https://vimeo.com/api/oembed.json?url=https://player.vimeo.com/video/${i}')
        .then(res => res.json())
        .then(
            (json) => {
                console.log(json);
                if (json.element == "200") {
                    document.write(`<iframe src="https://player.vimeo.com/video/${i}" width="640" height="640" frameborder="0" allowfullscreen=""></iframe>`);
                }   
            }
        )

    }

Обратите внимание, что вам нужно использовать переменную json внутри второго .then, чтобы попасть в нужную область.

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