Спасибо за ваши ответы! Это невероятно полезно.

некоторое время использую стек React - Redux - Typescript, и мне это до сих пор нравится. Тем не менее, так как я довольно новичок в Redux, меня интересует эта конкретная тема.Считается ли диспетчеризация действий Redux (и thunks) дорогостоящими операциями и должна использоваться экономно, или она должна использоваться так же, как setState?

Допустим, состояние Redux имеет единственный редуктор, который управляет пользовательской информацией:

const initialState = {
  firstName: '',
  lastName: ''
}

И чтобы изменить эти поля, скажем, у нас есть такие действия, какsetFirstName, setLastNameи т.д ... просто для простоты.

И скажем, в представлении у меня есть элемент ввода вrender():

<input onChange={this.firstNameInputChangeListener} placeholder="First Name"/>

принимая во вниманиеsetFirstName был сопоставлен с компонентом:

export default connect(state => state, { setFirstName })(ThisComponent);

Оптимально ли отправлять действие каждый раз при изменении ввода:

public firstNameInputChangeListener = (event) => {
  this.props.setFirstName(event.target.value);
}

Или лучше создать локальное состояние компонента, связать состояние с прослушивателем изменений и отправлять действие только при отправке формы:

public state = {
  firstName: this.props.firstName;
}

public firstNameInputChangeListener = (event) => {
  this.setState({ firstName: event.target.value });
}

public submitButtonListener = (event) => {
  this.props.setFirstName(this.state.firstName);
}

Что вы ребята думаете?

Ответы на вопрос(1)

Ваш ответ на вопрос