Доступ к элементам JSON с помощью функции Javascript для динамической загрузки содержимого

#javascript #json

#javascript #json

Вопрос:

Я пытался динамически загружать свой контент с помощью JSON и JavaScript. К сожалению, при попытке перебрать все элементы в моем JSON я получаю следующую функцию ошибки

 loadContent.js:15 Uncaught (in promise) ReferenceError: Invalid left-hand side in assignment
    at loadContent.js:15
    at Array.forEach (<anonymous>)
 

Моя функция для доступа к json выглядит следующим образом:

 function loadJSON(path) {
    fetch("../data/main.json")
        .then((response) => {
            return response.json()
        })
        .then((data) => {
            console.log(data)

            data.forEach(element => {
                //Befüllung von <template für artikel>

                var first = document.getElementById('first');
                var clone = first.content.cloneNode(true);

                clone.querySelector('figure a') = element.url;
                clone.querySelector('.article-content a h2') = element.heading;
                clone.querySelector('img') = element.src;


                document.getElementsByClassName('hero-inner').appendChild(clone);
            });
        })
        .then((err) => {
            console.log(err);
        });
}
 

JSON выглядит следующим образом:

 [{
    "url": "https://futurezone.at/science/alles-zu-meteoriten-und-asteroiden-die-sich-2020-der-erde-naehern/401027129",
    "src": "img/rightsection/pc/asteroiden.jpg",
    "data": "Tauriden-Meteorschauer erreicht Höhepunkt"
}]
 

Кто-нибудь может мне помочь, пожалуйста?

Комментарии:

1. Вы назначаете непосредственно узлу. Попробуйте присвоить свойствам узла, например, для данных, clone. querySelector(‘.selector’).innerText = element.data;

2. Когда я пытаюсь назначить его напрямую с помощью innerText , я получаю сообщение об ошибке Uncaught (in promise) TypeError: Cannot set property 'innerText' of null

3. проверьте селектор еще раз, возможно, это опечатка

4. да, спасибо, селектор был неправильным