Giter Club home page Giter Club logo

cars-class's People

Contributors

aiperi146 avatar baigausu avatar bubusara0505 avatar mgshrai avatar thybzi avatar ynambell avatar

Watchers

 avatar

cars-class's Issues

Компонент catalogMore не параметризован

Сейчас содержимое компонента catalogMore полностью хардкодно.

Нужно сделать чтобы:

  1. Кнопка использовалась как компонент
  2. Общее число машин (120) передавалось через аргументы

Не выводится блок "Показать ещё"

В исходной вёрстке ниже каталога отображался блок с кнопкой "Показать ещё" и общим числом машин (catalogMore), сейчас его не видно.

image

Нужно, чтобы этот блок выводился, но его можно было скрыть при помощи свойств компонента catalogContent

Внутри catalogItem задублирован код внутри details

Сейчас в коде catalogItem есть вот такая конструкция:

<div class="catalogItem__details">
    <div class="catalogItem__detailsItem">
        <div class="icon icon_fuel catalogItem__detailsItemIcon"></div>
        <div class="catalogItem__detailsItemCaption">${volume}L</div>
    </div>
    <div class="catalogItem__detailsItem">
        <div class="icon icon_steer catalogItem__detailsItemIcon"></div>
        <div class="catalogItem__detailsItemCaption">${gear}</div>
    </div>
    <div class="catalogItem__detailsItem">
        <div class="icon icon_people catalogItem__detailsItemIcon"></div>
        <div class="catalogItem__detailsItemCaption">${capacity} People</div>
    </div>
</div>

Она явно напрашивается на то, чтобы избавиться от дублирования, выводя detailsItem'ы в цикле на основе какого-то массива

Внедрить линтеры

Нужно задействовать в проекте линтеры:

  • ESLlint для JavaScript
  • StyleLint для CSS

Для обоих настроить конфиги и при необходимости внести изменения в код согласно этим конфигам.

Перевести код на ES6-модули

Переделать используемые JS-файлы на ES6-модули, используя import и export

Убрать добавление лишних тегов в <head>

Поправить используемые правила линтера:

  • убрать no-undef и no-unused-vars
  • при необходимости добавить что-то нужное

Компонент icon не умеет обрабатывать параметры

Сейчас компонент icon отображает всегда одну и ту же иконку и один и тот же дополнительный класс.

Нужно, чтобы он принимал вариацию иконки и (как опциональный аргумент) дополнительный класс. Например:

icon({name: 'iconOutline'});
icon({name: 'iconOutline', auxClass: 'catalogItem__detailsItemIcon'});

Компонент catalogItem не умеет работать с дробными ценами

Сейчас, если передать в catalogItem параметр price или oldPrice как 80.5, это отобразится как 80.5.00, что некорретно.

Нужно, чтобы точка и нули были не зашиты в шаблоне после вывода числа, а высчитывались на основе его значения.

  • 80 -> 80.00
  • 80.5 -> 80.50
  • 80.51 -> 80.51
  • 80.511 -> 80.51
  • 80.515 -> 80.52

Оживить кнопку Show more cars

Нужно сделать, чтобы изначально в галерее отображалось 3 машины, а кнопка Show more cars каждый раз догружала ещё три, пока не кончатся данные в API

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.