Conversation
| let getData = (url) => { | ||
| return new Promise((resolve, reject) => { | ||
| let xhr = new XMLHttpRequest(); | ||
| xhr.open('GET', url, true); | ||
| xhr.onreadystatechange = () => { | ||
| if (xhr.readyState === 4) { | ||
| if (xhr.status !== 200) { | ||
| reject('error'); | ||
| } else { | ||
| resolve(xhr.responseText); | ||
| } | ||
| } | ||
| } | ||
| }) | ||
| }; |
There was a problem hiding this comment.
Да, все верно, первое задание реализовано правильно
|
|
||
| } | ||
| // id получаем от кнопки купить товар | ||
| addPurchasedProduct(id, productsList) { |
There was a problem hiding this comment.
А что за продактс лист попадает в метод? Надо ли это? Может просто все данные по товару сразу отправить, не только id (из кнопки мы все можем вытащить, если добавим ей соответствующие data атрибуты)
There was a problem hiding this comment.
я думал вызывать этот метод из обработчика событий клика по кнопке, и передавать массив products из класса productsList
|
|
||
| deletePurchasedProduct(id) { | ||
| let removableInd = purchasedProducts.findIndex(product => product.id === id); | ||
| if (removableInd != -1) { |
| deletePurchasedProduct(id) { | ||
| let removableInd = purchasedProducts.findIndex(product => product.id === id); | ||
| if (removableInd != -1) { | ||
| this.purchasedProducts.splice(removableInd, 1); |
There was a problem hiding this comment.
Отлично, так удалим товар, но помимо этого еще страницу надо обновить и отобразить обновления
| if (id === product.id) { | ||
| const purchasedProduct = new PurchasedProduct(product); | ||
| this.purchasedProducts.push(purchasedProduct); | ||
| } |
There was a problem hiding this comment.
Товар добавлен, но надо теперь отобразить его - тут видимо рендер надо вызывать
| // render() html код | ||
| } | ||
|
|
||
|
|
There was a problem hiding this comment.
Как набросок корзины - очень хорошо, придраться не к чему. Надо продолжать доделывать. Если застряли - пишите, что не получается, разберемся
No description provided.