View Code? Open in Web Editor
NEW
Home Page: https://angst-storm-ananas.herokuapp.com/
JavaScript 9.55%
HTML 19.85%
TypeScript 64.72%
CSS 5.87%
ananas's Introduction
- src
- app
- app.module.ts - модуль со всеми компонентами и подключениями
- app.component.ts - базовый компонент с заголовком, кнопкой для вызова модалки и элементом, на месте корого рендерятся таблица или список компаний
- models - директория с моделями данных для компаний
- company.model.ts - модель, в которой хранятся данные в моем приложении
- dadata.model.ts - модель, в которой приходят данные с dadata.ru
- services
- companies.service.ts - сервис, хранящий массив данных о компаниях и делающий запросы к dadata.ru
- list - компонент, отображающий компании списком карточек (мне показался этот вариант более удобным)
- table - компонент, отображающий компании таблицей (соответствует ТЗ)
- inline-edit - компонент, реализующий возможность редактировать адрес компании
- directives
- autofocus.directive.ts - вспомогательная директива для inline-edit, делает фокус на input
- add-company - компонент с реактивной формой для добавления компании, рендерятся внутри модального окна
- Если dadata.ru не находит компаний с соответствующим ИНН - он расставляет в ячейки значение “Нет данных”
- Модальные окна, как и многие стили, взяты из angular material для экономии времени. Сам я реализовывал модальное окно здесь
- В add-company обязательное поле только ИНН, так как остальное можно загрузить по нему
Развернуто на Heroku
![demo](./readme_assets/demo.gif)
ananas's People
Watchers