Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sprint 2 #4

Closed
wants to merge 64 commits into from
Closed

Sprint 2 #4

wants to merge 64 commits into from

Conversation

deadem
Copy link
Owner

@deadem deadem commented Jan 29, 2023

  • добавлен Typescript
  • подключены линтеры (eslint/stylelint)
  • реализован динамический рендеринг компонентов
  • добавлена шина событий (EventBus), пока что используется только для навигации между страницами
  • добавлены обработчики DOM-событий
  • добавлена валидация полей
  • добавлен класс для выполнения HTTP-запросов (пока что не задействован)

подключена страница логина
…льную директорию, добавлена их регистрация
добавлена поддержка прямых ссылок (ref) внутри компонента
добавлен пример получения и вывода данных в ответ на событие onSubmit на странице логина
src/utils/HTTPTransport.ts Outdated Show resolved Hide resolved
package.json Show resolved Hide resolved
src/utils/Block.ts Outdated Show resolved Hide resolved
src/utils/Block.ts Show resolved Hide resolved
src/utils/HTTPTransport.ts Show resolved Hide resolved
src/utils/HTTPTransport.ts Outdated Show resolved Hide resolved
src/utils/HTTPTransport.ts Outdated Show resolved Hide resolved
src/components/chat-day/chat-day.ts Show resolved Hide resolved
src/components/input-field/input-field.ts Show resolved Hide resolved
@deadem
Copy link
Owner Author

deadem commented Jan 31, 2023

Вычистил закомментированный код - интерактивные элементы теперь реально интерактивные. Несколько примитивно интерактивны пока что - чисто для демонстрации.

src/components/chat-content/chat-content.ts Outdated Show resolved Hide resolved
@@ -1,11 +1,11 @@
<div class="chat-header{{#if className}} {{ className }}{{/if}}">
<div class="chat-header__avatar"></div>
<div class="chat-header__name">{{ name }}</div>
<div class="chat-header__menu-button" page="chat-menu-user">&vellip;</div>
<div class="chat-header__menu-button" ref="button">&vellip;</div>
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Пытался чет придумать как типизировать темплейт, но чет все варианты хреновые. Что-то около рабочее - завернуть темплейт в функцию, которая аргументами принимает тип в котором описаны все передаваемые свойства. Но чет фигня( Нашел тредик, но там тоже нет чет финального решения microsoft/TypeScript#5151

Copy link
Collaborator

@HellSquirrel HellSquirrel Feb 2, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Я бы вот куда-то сюда смотрела https://www.typescriptlang.org/docs/handbook/2/template-literal-types.html
Ну или старый-добрый класс создавать (а ты уже это делаешь вроде) и типизировать его дженериком с пропсами

Еще можно зашквариться в tagged template literals https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#tagged_templates, но кажется это too much для наших студентов

@khitrind
Copy link

khitrind commented Feb 2, 2023

Ничего особо умного предложить не получилось( Странный спринт, конечно с изобретением своего фреймворка рендеринга, следующие понятнее должны быть

@deadem deadem closed this May 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants