Yushkevich
а тут пытаюсь 2 аргумента отдать
Yushkevich
и index и value
Yushkevich
и что-то одно только уходит
Yushkevich
как правильно нужно сделать?
Denis
Объект payload
Yushkevich
его в дебагере в event вижу, там все что надо. А как к нему добраться?
Yushkevich
то есть я в функции оставляю только index
Yushkevich
а в методе делаю типа this.payload.data ?
Anonymous
https://www.youtube.com/watch?v=Ns0zijQJxH4
спс последнее тоже ок
Yushkevich
мы чуть ранее это разбирали - удаление элемента <div v-for="(product, index) in products"> <basket-product :product="product" @dataUpdated="updateCart" @remove="removeProduct(index)" > </basket-product> </div>
Yushkevich
я на jsfiddle весь код кидал
Yushkevich
у меня при удалении еще меняется общая сумма, После запроса я ее с сервера отдаю. Мне ее нужно в parent обновить
Yushkevich
на изменение количества товаров я делаю просто updateCart(value) { this.allBaseSum = value.totalBasketBasePrice; this.allSum = value.totalBasketPrice; },
Yushkevich
вот мне сюда нужно как-то эти же данные получить removeProduct(index) { this.products.splice(index, 1); // this.allBaseSum = this.totalBasketBasePrice; // this.allSum = this.totalBasketPrice; }
Yushkevich
я не понимаю, как мне отсюда до них достучаться
Denis
Где фидл
Yushkevich
https://jsfiddle.net/toum6nLb/10/
Yushkevich
перенес туда последние изменения, но где-то скосячил. Идея перенесена, код еще не работает. Сейчас запущу
Yushkevich
завелось. В районе 26-31 строки js как раз метод, где мне надо вытащить из payload
Denis
Тотал должен быть компьютед
Yushkevich
а то что он с сервака мне приходит - пох?
Yushkevich
то есть это не сумма у меня всех элементов
Yushkevich
там какой нить дисконт может появится или еще чего-нить
Yushkevich
хотя в принципе наверно так смогу сделать. Мне возвращается цена товара и скидка. А дальше туда закину. Ага, спасибо за идею.
Yushkevich
А если не получится, то как такие вещи прокидывать наверх, когда еще и индексы используются?
Denis
https://jsfiddle.net/toum6nLb/14/
Denis
Самая уёбищная песочница
Denis
Че других нет?
Denis
Че ее все юзают?
Nikolay
jsbin
Denis
Да колпэн и то понтовее
Yushkevich
хз, я вообще первый раз песочницу использовал :) . Все-таки, я чувствую, что данные из payload нужны.
Yushkevich
В зависимости от общей стоимости (суммы) может быть разный дискаунт
Yushkevich
это считает сервер
Yushkevich
то есть я знаю в момент загрузки 2 цены - полная и цена со скидкой у товара. Но в зависимости от общей суммы корзины цена со скидкой может измениться. Менять всю корзину не хочется. Мне проще выводить только базовую цену там
Anonymous
Я тоже ненавижу люто jsfiddle
Yushkevich
а ниже выводить всего без скидки, скидка, к оплате - 3 значения.
Yushkevich
Всего без скидки я могу посчитать суммой. При удалении элемента, сумма автоматом пересчитается
Yushkevich
а дискаунт я не смогу посчитать. Он может на сервере измениться и мне на удаление его можно вернуть клиенту
Yushkevich
поэтому мне все-таки что-то вроде deleteItem() { axios.get("/local/api/cart.php?action=delete&id="+this.product.ID) .then(response => { this.$emit('remove', response.data); }) .catch(error => console.error(error)); }
Yushkevich
надо вернуть обратно
Yushkevich
и родительском компоненте достучаться до response.data
Denis
Эээ. Ты че? Тормози.
Denis
Куда погнал?
Yushkevich
тута я, сейчас твой код пока изучаю
Denis
/local/api/cart.php?action=delete&id="+this.product.ID Ты удаляешь гетом???
Yushkevich
ты его знатно порефакторил. Для себя подмечаю некоторые моменты
Yushkevich
да тут пристройка к битриксу пока. Там костыль временный
Yushkevich
пока апи нормального нет
Denis
Хер с ним
Denis
Почему сумма корзина с сервера приходит?
Yushkevich
я ж говорю, у меня тут временное решение пока, чтобы посмотреть - вообще идея стоит потраченных сил, чтобы глобально из него сделать что-то человеческое
Yushkevich
скидка от суммы корзины рассчитывается на сервере
Yushkevich
есть 2 суммы
Yushkevich
сумма без скидок
Yushkevich
ее можно делать computed
Denis
Не
Denis
Стой
Yushkevich
и сумма со скидками
Yushkevich
но так как скидка может изменится
Denis
Да стой чувак
Yushkevich
ага
Denis
Ты не то делаешь
Denis
Смотри. Есть корззина. Есть элементы корзины.
Denis
Есть продукты
Denis
Есть скидки
Denis
Есть способы доставки
Denis
Это все может вносить коррективы в цену.
Yushkevich
ага
Yushkevich
все так
Denis
А значит это должны быть ряды одной таблицы
Yushkevich
ты про шаблон или про "данные должны быть рядом"?
Yushkevich
вот у меня чуть более широкий шаблон. Я из фидла вырезал
Denis
Корзина (каждая) включает в себя коллекцию из элементов корзины
Yushkevich
тут много мусора. Я стили битриксовые тащил, чтобы над "рисованием" не заморачивться. таблицы только убил
Yushkevich
я правильно понял, что
Yushkevich
например, у меня в корзине <basket-product :product="product" @dataUpdated="updateCart" @remove="removeProduct(index)" > </basket-product>