Conversation
| @@ -0,0 +1,2 @@ | |||
| import React from 'react'; | |||
| import { render } from 'react-dom'; | |||
There was a problem hiding this comment.
Этого не должно быть здесь, перекину в векту master, предпологалось как шаблон использовать
src/lesson4/Cell.tsx
Outdated
|
|
||
| export default Cell; | ||
|
|
||
| export function getCell(props: CellProps) { |
There was a problem hiding this comment.
не вполне понятно зачем эта функция тут ( в тестах ее можно инлайново определить)
src/lesson4/Cell.stories.tsx
Outdated
| }; | ||
|
|
||
| export const nonFilled = () => [ | ||
| <Cell x={number('x', 1)} y={number('y', 23)} key="nonFilled" />, |
There was a problem hiding this comment.
Косячнул, уберу. Здесь не нужен.
src/lesson4/Field.stories.tsx
Outdated
| export const emptyCell = () => [ | ||
| <Field | ||
| field={object('field', [ | ||
| [ |
There was a problem hiding this comment.
хорошо бы Array.from({length: 5}).fill(false) или вроде того, а то читать не особо понятно - еще и шанс ошибиться в числе элементов выше
There was a problem hiding this comment.
Сделаю тогда вот так
Array.from<boolean[]>({ length: 10 }).fill( Array.from<boolean>({ length: 10 }).fill(false), );
f3c3028 to
436303d
Compare
a4514e2 to
4d55bac
Compare
| const cellGridFillRandom = ( | ||
| rows: number, | ||
| columns: number, | ||
| cellStatus = () => Math.random() < 0.3, |
There was a problem hiding this comment.
а зачем ты эту функцию несколько раз инлайново определяешь?
There was a problem hiding this comment.
Вроде один раз же определил в этом компоненте? Или я недопонял вопроса(
src/lesson4/GameOfLifeProto.tsx
Outdated
| this.state = { | ||
| fieldState: cellGridFillRandom(this.props.rows, this.props.columns), | ||
| }; | ||
| this.onClick = this.onClick.bind(this); |
There was a problem hiding this comment.
как на счет поставить бабель плагин и не делать это руками?
There was a problem hiding this comment.
Это который вот этот @babel/plugin-proposal-class-properties?
There was a problem hiding this comment.
И мне тогда получается можно использовать методы компонента через стрелочные функции, правильно понимаю?
|
|
||
| public onClick() { | ||
| this.setState(() => { | ||
| const cloneFieldState = cellGridFillRandom( |
There was a problem hiding this comment.
на сколько я вижу, здесь коллбэк не обязателен
| field={this.state.fieldState} | ||
| onClick={this.onClick} | ||
| /> | ||
| <button className="btn" onClick={() => this.onClick()}> |
There was a problem hiding this comment.
ты в конструкторе завязал контекст у метода - для чего?
я к тому, что тут можно обойтись без стрелочной функции
There was a problem hiding this comment.
Я заготовку начал делать видимо для метода, который будет при клике возвращать координаты ячейки и видимо забыл убрать, я уберу эту привязку
4d55bac to
34f1b74
Compare
0135b35 to
845a24b
Compare
No description provided.