<Alert show={this.state.showAlert} />
пусть будет всегда и по умолчанию скрытыйthis.setState({ showAlert: true, alertMessage: responseFromServer })
setTimeout( () => setState({ showAlert: false }), 5000 )
export default function (selector) {
return document.querySelector(selector)
}
.......
import $ from './param'
Item.findOneAndUpdate(
{_id: req.params.id }, // ищем айтем по id
{ $set: { name: req.params.name } } // меняем поле name на полученное в теле запроса из реакта
).then( () => {
// всё прошло удачно
res.json({ success: true })
} )
.catch( err => {
// всё прошло крайне неудачно
res.json({ success: false })
} )
onClick = e => {
this.setState({daughter: 21}) // тут меняем стейт в родителе
}
....
<Something onClick={this.onClick} /> // тут "клик в родителя"
<DaughterComponent someValue={this.state.daughter} /> // это будет доступно в компоненте как props.someValue, и там уже рендерить как надо
GENERATE_SOURCEMAP=false
data.push({ id: 5, name: 'Saint-Petersburg' });
changeData( data );
<Parent>
<Helmet>
<title>My Title</title>
<meta name="description" content="Helmet application" />
</Helmet>
<Child>
<Helmet>
<title>Nested Title</title> // положить это
<meta name="description" content="Nested component" />
</Helmet>
</Child>
</Parent>