public onRoute = () => {
if (data.role_type === `/${document.location.pathname.split('/')[1]}`) {
return <Component/>; // тут ничего не передается
}
return this.context.router.history.push('/404');
}
public onRoute = () => {
if (data.role_type === `/${document.location.pathname.split('/')[1]}`) {
return <Component {...this.props} />;
}
return this.context.router.history.push('/404');
}
<AuthRoute path='/some_path' component={SomeComponent} />
Какие еще подводные камни могут быть у такой работы?
const Grid = React.forwardRef((props, ref) => (
<div ref={ref}>{props.children}</div>
));
export class MyComponent extends React.Component {
render() {
return (
<Grid innerRef={this.props.forwardRef} />
);
}
}
const Grid = props => (
<div ref={props.innerRef}>{props.children}</div>
);
table.innerHTML += `<tfoot><tr id="total-price"><td colspan="3">Total price:
${shop.totalProductsPrice}</td></tr></tfoot>`;
table.innerHTML += some;
, равносилен table.innerHTML = table.innerHTML + some;
NaN === ""
возвращает false. this.state.data[this.state.id][e.target.name] = !checked;
this.setState({
data: this.props.data,
id: this.props.id
});
const a = { key: 'value' };
const b = a;
b.key = 'new value';
console.log(a.key); // new value
this.state.data[this.state.id][e.target.name] = !checked;
render () {
const { match: { url } } = this.props;
return (
<Switch>
<Route exact path={url} content={Tweets} />
<Route exact path={url + '/with-replies'} content={WithReplies} />
<Route exact path={url + '/media'} content={Media} />
</Switch>
)
}
render() {
return someCondition ? (
<Component
prop1={a.prop1}
prop2={a.prop2}
prop3={a.prop3}
prop4={a.prop4}
prop5={a.prop5}
/>
) : (
<Component
prop1={b.prop1}
prop2={b.prop2}
prop3={b.prop3}
prop4={b.prop4}
prop5={b.prop5}
/>
);
}
render() {
const c = someCondition ? a : b;
return (
<Component
prop1={c.prop1}
prop2={c.prop2}
prop3={c.prop3}
prop4={c.prop4}
prop5={c.prop5}
/>
);
}
render() {
return (
<Wrapper>
{condition1 &&
condition2 &&
condition3 &&
condition4 && (
<Component />
)}
</Wrapper>
)
}
render() {
const shouldShowComponent = condition1 && condition2 && condition3 && condition4;
return (
<Wrapper>
{shouldShowComponent && <Component />}
</Wrapper>
);
}
или браузеры их не поддерживают и учить их тоже незачем ?