2016-09-02 2 views
0

한 경로에서 다른 경로로 이동하면서 일부 데이터 (특히 배열)를 전달하려고합니다. 그게 어떻게 가능해?Ember 2.x의 경로 간 매개 변수 전달

배열에 검색어 매개 변수를 사용할 수없는 이유는 무엇입니까?

전환하는 동안 특정 서비스에 데이터를 저장하는 것이 문제가됩니까?

참고 : 나는이 질문에 거의 같은 오래된 질문이 있음을 알고 있습니다. 그러나 선택한 답변은 Ember 2.x에는 적용되지 않습니다. 그 질문은 1, 2입니다.

답변

1

queryparams가 배열과 함께 작동하지 않을지는 모르겠지만 단일 ID로만 사용 했으므로 확실하지는 않지만 작동하는 경우에도 좋은 해결책은 아닙니다. 얼마만큼 보낼 수 있는지에 대한 제한이 있습니다. 매개 변수를 사용하고 데이터를 가진 사용자를 귀찮게해서는 안됩니다.

  1. 그냥 지역 사용하기 위해 데이터를 저장하는 모델을 만드는, 그래서 당신은 단순히 주어질거야 당신이 당신의 데이터를 사용하려는 모든 컨트롤러에 주입해야하는 엠버 저장소를

  2. 사용하는 서비스를 사용할 수 있습니다

나는 모델/저장소 변형을 선호하므로 다른 사람이 귀하의 코드를 유지 관리해야한다면 정상적인 흐름을 관찰하고 따라갈 수 있습니다.

+1

URL을 북마크/공유하는 기능을 사용하기 때문에 검색어 매개 변수를 사용하고 상점이 아닌 이유가 유용합니다. – tarponjargon

0

"는 transition.data"으로 테스트 한 후

업데이트; 역사를 업데이트하지 않으면 우리에게 문제가되는 것 같습니다. 그래서 우리는 다시 "queryParams"를 사용합니다. 제약 조건은 다음과 같습니다

let transition = router.transitionTo(route, model); 
transition.data[propName] = propValue; 
: 다음과 같은 라우팅하면서 액션이 목적을 위해 내가 transition 객체를 사용하고

OLD 루트 답변

사이에 복잡한 개체를 전달하지 않는다

또한이 코드를 링크 대상으로 사용하는 구성 요소를 작성했습니다.