2017-12-03 10 views
0

은이 같은 쿼리 문자열을 구성하는 기능을 가지고 , this.props.location.search은 첫 번째 호출에서 업데이트되지 않습니다. 나는 항상 내가 원하는 것을 얻기 위해 search 두 번 전화해야한다. 아무도 이것에 대한 해결책을 안다?강제 업데이트 'this.props.location.search`에 대한 반작용 라우터

참고 : 나는 경우에만 다음 다시 쓰게에서 업데이트 된 소품을 볼 수 있습니다, react-router-dom V4, query-string

답변

0

react을 사용하고 있습니다. 왜이 같은 callAPI 기능에 직접 쿼리를 통과하지 :

search = (params) => { 
    for (let key in params) { 
     if (params[key] === '') delete params[key]; 
    } 
    params = CaseConverter.camelCaseToSnackCase(params); 
    let paramString = queryString.stringify(params); 
    paramString = '?' + paramString; 
    this.props.history.push(paramString); 
    this.callAPI(paramString); 
} 

callAPI = (q) => { 
    get('/endpoint' + q).then(response => {}); 
} 
+0

내가 쿼리 매개 변수 (매김)를 구성 할 수있는 다른 기능을 가지고, 그래서 URL의 매개 변수와 동기화 유지하는 방법을 찾으려면 . 나는 Angular에서'ng-model'을 사용하여 이것을 달성 할 수있다. 그러나 나는 아직도 React에서 투쟁한다. –