Я хотел бы знать, как лучше хранить переменные, которые я использую на данный момент, в моем компоненте реакции.
Я уже пытался просто объявить переменные в конструкторе ниже setState
, но эти переменные нельзя изменить.Затем я попытался сохранить переменные в состоянии как пары ключ-значение, но поскольку одно из значений зависит от другого, оно не сработало.
Вот мой текущий конструктор:
constructor(props) {
super(props);
this.state = {
scooter: props.scooter,
header: props.header,
reservation: ""
};
}
componentWillReceiveProps(nextProps) {
this.setState({
scooter: nextProps.scooter,
header: nextProps.header
});
}
Некоторые элементы нужно будет также вызывать в componentsWillRecieveProps
, так как элемент будет меняться при следующих свойствах.
переменныениже
render() {
const reservation = this.state.scooter.state.LastAdminReservation;
var a = moment();
const c = moment(reservation.PendingDate);
const d = moment(reservation.EndDate);
const duration = d.from(c, true);
var timeSince = a.from(d, true);
const date = moment(reservation.DownloadAckDate).format("DD.MM.YYYY
HH:mm");
Я хотел бы иметь возможность вызывать эти переменные в моем возвращении и иметь возможность обновлять var a
и var timeSince
на следующих реквизитах, не сохраняя их в моем рендере, так как это плохая практика,Спасибо!