Когда использовать redux-saga и когда redux-thunk?
Какой из них лучше для электронной коммерции?
Есть ли большая разница в производительности? Преобразователи быстрее, чем саги?
На мой взгляд, redux-saga идеально подходит, если вам нужно управлять взаимодействием длительных задач. Например, я работал над программным обеспечением для телевизионных приставок, которое требовалось для управления переключением каналов. Есть несколько асинхронных действий, которые необходимо выполнить последовательно, чтобы начать воспроизведение, а затем во время воспроизведения необходимо периодически выполнять дополнительные действия. Кроме того, каждый шаг должен иметь возможность отмены, если пользователь меняет каналы. Нечто подобное легко сделать с сагами (при условии, что вы привыкли с ними работать), но сравнительно сложно с неотменяемыми обещаниями.
Если вам просто нужно делать довольно простые вещи, такие как «когда они нажимают кнопку, загружают некоторые данные», то оба они отлично справляются со своей задачей. Если ваши случаи довольно просты, я бы склонялся к редукционному преобразованию, потому что его кривая обучения проще, чем редукционная сага. Обещания распространены в отрасли, и многие разработчики уже к ним привыкли; в то время как саги - довольно специализированный фрагмент кода.
Не беспокойтесь о разнице в производительности. В обоих случаях на выполнение кода библиотеки тратится очень мало времени. Основная часть времени будет потрачена на выполнение вашего кода, и хотя стиль вашего кода будет немного отличаться, количество вещей, которые вам нужно рассчитать для выполнения определенной работы, будет очень похожим.