-
Notifications
You must be signed in to change notification settings - Fork 0
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Много багов в дизайне:
- Заголовок индекса - на весь экран моего ноута (1440х900):
- Верхнее меню - его появление растягивает вьюпорт в ширину, так же не работает листание курсов:
- Параллакс слишком быстро перекрывает низ блока:
- Нет картинок у курсов:
- В мобильном виде верхняя кнопка "Курсы" с переносом
- Поиск в библиотеке - при активности границы не подсвечиваются как в дизайне, кнопка с переносом слова:
@Nelfimov |
@Nelfimov |
Сделал данные для Library: Hero: query NewQuery {
sections {
nodes {
sections {
title
navigationName
}
content
id
}
}
} Материалы: query NewQuery {
allTutorials {
nodes {
learningMaterials {
description
skills {
... on Skill {
title
}
}
}
id
}
}
} |
ui/navbar/src/navbar.component.tsx
Outdated
id: el.id, | ||
})) | ||
|
||
const reverseLinks = getLinks?.reverse() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Нехорошо привязываться к reverse
, лучше элементы зашить четко по ID.
ui/form/src/form.component.tsx
Outdated
return ( | ||
<> | ||
<Column display={sendForm ? 'none' : 'flex'}> | ||
<Input | ||
value={question} | ||
onChange={setQuestion} | ||
placeholder={intl.formatMessage({ id: 'questions.form.input.placeholder.message' })} | ||
placeholder={form?.data?.allForms.nodes[6].forms.text} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Здесь и далее - ты зависишь от порядка ответа сервера. Лучше перейти на привязку к ID.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Nelfimov
не совсем понимаю как это реализовать, я получаю массив с объектами, внутри каждого хранится id:
"nodes": [
{
"id": "cG9zdDozMDA=",
"forms": {
"text": "Мы получили твой вопрос, вернёмся с ответом asap."
}
},
{
"id": "cG9zdDoyOTk=",
"forms": {
"text": "«Соглашение об обработке персональных данных»"
}
},
{
"id": "cG9zdDoyOTg=",
"forms": {
"text": "Нажимая на кнопку «Оставить заявку», вы принимаете"
}
},
{
"id": "cG9zdDoyOTY=",
"forms": {
"text": "Отправить сообщение"
}
},
{
"id": "cG9zdDoyOTU=",
"forms": {
"text": "Телефон"
}
},
{
"id": "cG9zdDoyOTQ=",
"forms": {
"text": "Имя"
}
},
{
"id": "cG9zdDoyOTM=",
"forms": {
"text": "Сообщение"
}
}
]
я делала доступ к данным например через map(el=>el.data)
и nodes[index]
, как получать доступ по другому?
получается что внутри массива все равно приходится делать поиск нужного объекта с данными используя индекс например - nodes[3].id
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
У тебя каждая нода обладает своим ID. Ты ведь можешь их захардкодить и подставлять туда, где ожидаешь инфо по этому ID.
Изменение элемента, его ID, уже будет считаться ломающим изменением, которое конечно же повлечет изменение кода. Но иначе ты сильно зависишь от порядка элементов в ответе сервера.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
только что исправила и ревью запросила, посмотри как время будет
ui/card/src/card.component.tsx
Outdated
@@ -25,11 +25,13 @@ export const Card: FC<CardProps> = ({ ...props }) => { | |||
> | |||
{props.image ? ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Лучше перейти на <Condition>
@@ -58,7 +58,7 @@ export const Accordion = ({ screen }) => { | |||
fontSize={{ _: 'medium', standard: 'standard', wide: 'major', ultra: 'major' }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Переходи выше на Condition
|
||
export const Accordion = ({ screen }) => { | ||
const [selected, setSelected] = useState<number | null>(null) | ||
const items = () => (screen === 'wide' ? Array.from({ length: 3 }) : Array.from({ length: 6 })) | ||
|
||
const answer = useFaq() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
В ui
хранятся переиспользуемые компоненты. А тут мы зашиваем конкретное значение. Его лучше передавать через пропсы.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Правки + ID нод
ui/navbar/package.json
Outdated
"@makotot/ghostui": "2.0.0", | ||
"@ui/layout": "workspace:0.0.1", | ||
"@ui/text": "workspace:0.0.1", | ||
"graphql": "16.7.1", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
graphql
тоже можно в peer
- он отдается у тебя в энтрипоинте
ui/form/package.json
Outdated
"@emotion/react": "11.11.0", | ||
"@emotion/styled": "11.11.0", | ||
"graphql": "16.7.1", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Можно в peer
ui/condition/package.json
Outdated
"name": "@ui/condition", | ||
"version": "0.0.1", | ||
"license": "BSD-3-Clause", | ||
"main": "src/index.ts" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
можно переиспользовать наш - @atls-ui-parts/condition
|
||
import { useFaq } from '../data' | ||
|
||
export const Feedback = ({ open, onClose }) => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Интерфейсы
import { Layout } from '@ui/layout' | ||
import { Text } from '@ui/text' | ||
import { useHover } from '@ui/utils' | ||
import { usePressed } from '@ui/utils' | ||
|
||
export const Item = ({ ...props }) => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Интерфейс
{title} | ||
</Text> | ||
</Link> | ||
{path && ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Condition
сюда хорошо впишется
В последнем коммите - поправила то, что забыла ^ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
основные претензии это разного рода вычисления "на лету" вроде {hero?.data?.sections.nodes[6].sections.title.split(' ').slice(0, -1).join(' ')}
и прочих, которые создают нестабильность при работе с данными, то есть, любое смещение в массиве и мы получим не то, что ожидается
No description provided.