React App을 업그레이드하는 중입니다. 포장 된 구성 요소를 React Router (V4 등)에 전달하는 데 많은 시간이 걸린 후, 구성 요소는 새로운 소품이 전달 될 때마다 "마운트"됩니다.포장 된 구성 요소를 React Router에 지속적으로 다시 장착하지 않고 전달하는 방법
여기은, 랩 된 구성 요소의 ...
export default function preload(WrappedComponent, props) {
class Preload extends React.Component {
componentWillMount() {
getDataForComponent(props);
}
render() {
return <WrappedComponent {...props} />;
}
}
return Preload;
}
그리고 여기에 우리가 그것을 사용하는 방법을 ...
const FlagsApp = (props) => {
return (
<Route path="/report/:reportId/flag/:id/edit" component{preload(FlagForm, props)} />
);
};
조치를 파견하고 업데이트를받을 때마다 구성 요소가 다시 탑재되어 많은 문제가 발생합니다. 새 구성 요소 클래스를
- : 경우 GitHub의에 this thread에 따르면, 구성 요소를 다시 마운트합니다 예를 들어, 렌더링하다 내가 직접 문제가 해결의
FlagForm
구성 요소를 통과하면 새 구성 요소뿐만 아니라
을 만들 것입니다 익명 함수 {...}을 (를)} /> 사용하지만, 그때는 이용할 수 없습니다 preload
함수 중 하나입니다.
그렇다면 구성 요소를 다시 탑재하지 않고 어떻게 동일한 결과를 얻을 수 있습니까?
미리 도움을 청하십시오!
프리로드가 어떻게 작동하는지 조금 설명해 주시겠습니까? 그것이받은 첫 번째 소품만으로 한 번만 데이터를 불러야합니까? 아니면 소품 변경에도 반응해야합니까? 예하에 필요한 소품은 어디에서 왔습니까? –