Skip to content

Организация работы с данными с стейт менеджером и без него

Notifications You must be signed in to change notification settings

Arslanoov/count-data-test

Repository files navigation

Организация работы с данными с стейт менеджером и без него

Vue2 + Vuex


Реализация с vuex:
https://arslanoov.github.io/count-data-test/#/with-vuex

Реализация без vuex:
https://arslanoov.github.io/count-data-test/#/without-vuex

2222

Логика:

Ввести отрицательное кол-во или не числовое значение ни в один input нельзя

  1. Если меняется цена, то пересчитывается общая сумма (сумма = цена * кол-во)

  2. Если меняется кол-во, то пересчитывается общая сумма (сумма = цена * кол-во)

  3. Если меняется общая сумма:

  • Если при изменении общей суммы и цена и кол-во равно 0 - общую сумма меняется на 0
  • Если цена = 0 (а кол-во != 0), цена меняется на: новая сумма / кол-во
  • Иначе: Считаем предполагаемое кол-во (новая сумма / цена), если получилось целое число - меняем кол-во
  • Если не целое, то кол-во округляется в меньшую сторону
  • Если округленное кол-во = 0 - меняется кол-во и общая сумма на 0
  • Кол-во != 0: кол-во меняется на округленное значение, считается новая цена (новая сумма / округленное кол-во)

Если сумма получилась нечетной, при отправке на "сервер" (session storage) возвращается success: false с сообщением об ошибке

События сортируются по времени, есть тип события, когда оно было создано и payload

Задержка (для имитации сервера) - 1с

About

Организация работы с данными с стейт менеджером и без него

Topics

Resources

Stars

Watchers

Forks