Давайте перейдем от регистрации данных на консоли для отображения его в Интернете.
В файле index.html я создам div с идентификатором root и h1 элемента.
Habits
Я получаю доступ к этому элементу из моего index.js, используя getelementbyId ()
и сохранить его до переменной.
const container = document.getElementById('root');
Я буду использовать Iconify Icons, поэтому добавим тег скрипта в заголовок моего HTML-файла. Я пытался использовать шрифт потрясающие значки для этого Но я продолжал получать ошибку несоответствия типа на консоли. (Я бы очень ценю помощь о том, как идти об этом)
Переход к файлу index.js у меня уже есть AXIOS FORTTHING DATA COMBERS Отказ Axios возвращает обещание, поэтому я ценю тогда ()
Метод, который в основном говорит «Эй, после того, как вы закончите, извлеките данные, продолжайте следующие операции. «Если извлечение данных не удается, мне нужно поймать эту ошибку, поэтому я ценю .CATCH ()
Способ и пройти в функцию стрелки, которая выступает в результате ошибки.
const response = await axios({ url: 'http://localhost:4000/habittracker/habits', method: 'get' }) .then() .catch(err => { console.log(err) })
Внутри .then ()
Я передам функцию стрелки с помощью параметра в качестве параметра. Мой функциональный орган будет включать в себя переменную декларацию, которая выполняет Ответ
. Использование foreach ()
Метод я буду петлю через свойства данных.
.then(response => { let data = response.data; data.forEach(habit => { //code }) })
В foreach ()
Метод пройдет функцию стрелки с привычкой в качестве параметра. Затем создайте и добавьте следующие HTML-элементы.
- Div с классовой картой.
const card = document.createElement('div') card.setAttribute('class', 'card') container.appendChild(card)
Вышесказанное просто говорится, создайте div с классом карты и добавьте его как ребенок корневого элемента (контейнера).
- Div с контентом класса. Это будет детский элемент карты. Это также будет «нести» два ребенка; вход и абзац.
const content = document.createElement('div') content.setAttribute('class', 'content') card.appendChild(content) const input = document.createElement('input') input.setAttribute('type', 'checkbox') content.appendChild(input) const p = document.createElement('p') p.setAttribute('class', 'habit-title') p.textContent = habit.title content.appendChild(p)
Привычка. Титл
Позволяет добраться до вашего свойства заголовка из привлеченных данных.
- Div с классом Редактировать (Из-за отсутствия лучшего имени) 😅 который будет детским элементом карты и имеет два дочерних элемента.
const edit = document.createElement('div') edit.setAttribute('class', 'edit') card.appendChild(edit) edit.insertAdjacentHTML('beforeend', ''); edit.insertAdjacentHTML('beforeend', '');
inslipadjacenthtml ()
используется для добавления указанной строки в виде элемента HTML. Требуется два параметра позиция и HTML-строка. В этом случае я вставляю HTML в качестве последнего ребенка в элементе.
Наконец, мы добавим файл style.css. Вы можете найти CSS здесь Отказ
Выход с MongoDB и сервером работает:
✍day 14.
Оригинал: “https://dev.to/mtee/consuming-api-s-part-2-1b51”