
Igor
20.07.2018
07:35:07
Надеюсь с вопросом по react router сюда можно. Использую 4ую версию. В приложении все роуты работают правильно. Но если обновить страницу или попробовать зайти на страницу через адресную строку, то пишет cannot get (адрес). Читал, что может помочь серверный рендеринг, но пока с ним не разобрался.
Можете дать какие нибудь советы по решению данной проблемы или с серверным рендерингом все заработает?

Again
20.07.2018
07:36:54
надо, чтоб он на все запросы отдавал твою мейн страницу

Maksim
20.07.2018
07:38:06
Всем привет, в ответ от сервера в headers получаю ‘Set-Cookie’ , как достать значение?

Google

Vitaliy
20.07.2018
07:38:10
возмжно неправильно подключил, там по идее с history еще надо связать

Cenator
20.07.2018
07:38:11

Igor
20.07.2018
07:38:31
Node js express

Cenator
20.07.2018
07:38:32

Egor
20.07.2018
07:38:44

Igor
20.07.2018
07:38:47
Нет вроде

Again
20.07.2018
07:39:52

Cenator
20.07.2018
07:40:02

Vitaliy
20.07.2018
07:40:07

Igor
20.07.2018
07:41:03
Я новичок, и немного не понимаю вопрос. Делаю все локально, использую реакт ноду. Вебпак для сборки

Vitaliy
20.07.2018
07:42:54
ммм. тогда возможно неправильно сконфигурирован вебпак

Igor
20.07.2018
07:44:32
Если приложу скрин, или ссылку на репу, сможете помочь что не так?

Cenator
20.07.2018
07:44:44
может ты прочитаешь то что я написал?

Google

Igor
20.07.2018
07:47:17

Dzmitry
20.07.2018
07:51:03
вопрос
обычный пример — массив и по клику на ведро удаляю элемент
все элементы кроме последне7го удаляются
в чем трабла может быть?
(при удалении последнего рендер вызывается, почему то, два раза и последний раз с предыдущим стейтом)

Cenator
20.07.2018
07:52:00

Denis
20.07.2018
07:52:51

Dzmitry
20.07.2018
07:53:31
да в том то и дело, что нет
там дичь какая то
удаляю последний элемент — рендер с новым стейтом — рендер со старым стейтом

Roman
20.07.2018
07:53:46
Всем привет!
Можно ли как-то перерендерить компонент без использования setState?

Dzmitry
20.07.2018
07:54:19

Denis
20.07.2018
07:54:30

Vitaliy
20.07.2018
07:59:31
если ничего не менялось, зачем перерендеривать?

Roman
20.07.2018
08:00:53

Vitaliy
20.07.2018
08:01:18
состояние без использования state/setState имхо лучше всего при помощи withState из recompose

Roman
20.07.2018
08:01:19

Cenator
20.07.2018
08:01:55

Roman
20.07.2018
08:02:24
Нужно перерендерить

Vitaliy
20.07.2018
08:02:40
эм странно
как это возможно

Cenator
20.07.2018
08:03:01

Roman
20.07.2018
08:03:14
Просто загрузка картинок идет в директорию девайса

Vitaliy
20.07.2018
08:05:54

Google

Roman
20.07.2018
08:06:45

Dzmitry
20.07.2018
08:10:57
разобрался, там кто то охуительно сверсттал, что мой блок свойств оказался блядь в лэйбле
и в нем же была кнопка "добавить"

chep
20.07.2018
08:27:54
Ку гайс, как в можно протестит то что lifecycle вызывается action?

Андрей
20.07.2018
08:28:36
sinonjs

Vlad
20.07.2018
08:29:28

Андрей
20.07.2018
08:30:07
еще можно замокать стор библиотекой redux-mock-store, и получать массив совершенных действий

Vlad
20.07.2018
08:31:01
По-хорошему не надо тестировать action, только его вызов с параметрами и всё, а action замокать
jest.mock('../../actions/posts', () => ({
fetchPost: jest.fn(() => ({
type: 'FETCH_POST',
})),
setVotesAndFlags: jest.fn(() => ({
type: 'SET_VOTES_AND_FLAGS',
})),
}));

chep
20.07.2018
08:31:41

Vlad
20.07.2018
08:32:03
Тогда мокаешь action и потом expect(action).toHaveBeenCalledWith({})

chep
20.07.2018
08:32:52

Vlad
20.07.2018
08:34:42

Андрей
20.07.2018
08:34:48
массив наполняется после произошедшего действия, вариант Влада типичнее для модульных тестов и TDD

chep
20.07.2018
08:36:49

Андрей
20.07.2018
08:37:45
так обернуть в провайдер надо с замоканым стором весь тестируемый компонент...

chep
20.07.2018
08:38:27

Google

Vlad
20.07.2018
08:39:07
const store = mockStore({})
<Component store={store}>

Admin
ERROR: S client not available

chep
20.07.2018
08:39:38

Vlad
20.07.2018
08:40:41
Сделай прост shallow
lifecycles можно проверять так
wrapper.instance().componentDidMount();
Это модульные тесты ж, уже в интегарционных имеет смысл

chep
20.07.2018
08:41:32
спс

Vlad
20.07.2018
08:41:33
expect(wrapper.instance().componentDidMount()).toHaveBeenCalledTimes(1)
Jest + enzyme обычно хватает для Unit тестов
Хотя глупо, нету смысл тестировать тебе функции реакта
В твоём случаи ты покрыл тестов ifecycle реакта, что не имеет смысл, это уже реакт покрывает тестами componentDidMount

chep
20.07.2018
08:43:28
спс

Андрей
20.07.2018
08:43:32
вообще да, это же тестирование апи реакта

Vlad
20.07.2018
08:43:39
Проверять есть смысл вызов функций в componentDidMount с верными параметрами
expect.assertions(2);
expect(func).toHaveBeenCalledTimes(0);
wrapper.instance().componentDidMount();
expect(func).toHaveBeenCalledTimes(0);
Пример

Max
20.07.2018
08:59:13

Lulz
20.07.2018
10:00:32
Привет. onChange не отрабатывает, если я выделяю строку и удаляю ее с помощью backspace. Такое действие как отлавливать удобно? Спасибо

Again
20.07.2018
10:01:01

Google

Lulz
20.07.2018
10:01:56
keycode
т.е мне еще нужно пвоесить где-то обработчик, чтобы отлавливать нажатие клавиши?)

Again
20.07.2018
10:02:55

Lulz
20.07.2018
10:02:57
т.е если я постепенно буду нажимать backspace то ок вызовет хэндлер, но если я выделяю сразу строку и нажимаю backspace то не отрабатывает хэндлер

Again
20.07.2018
10:02:57
на инпут

Lulz
20.07.2018
10:03:20

Again
20.07.2018
10:03:22
на инпут вешаешь keydown и там из таргета достаешь keycode
точнее из евента
и бекспейс это 7 или 8
вроде

Cenator
20.07.2018
10:03:59

Lulz
20.07.2018
10:04:12

Cenator
20.07.2018
10:07:12