두 개의 스토어 - GroupsStore 및 ItemsFilterStore가 있습니다. ItemsFilterStore의 상태는 GroupsStore에서 사용할 수있는 그룹의 단일 그룹의 선택을 포함해야하지만, (카테고리 목록이 상점 A에서 사용 가능 해지면 하나의 카테고리를 선택하고 상점 B에서 ID를 설정하십시오.
그룹이 GroupsStore에서 처음에 사용할 수없는, 그래서 ItemsFilterStore의 선택은 처음 만들어 질 수 없다 생성자는 그것을 null로 초기화합니다.
일단 그룹이 GroupStore에서 사용 가능하게되면, (논리에 따라) 하나의 그룹을 선택하고 ItemsFilterStore에서 ID를 설정하는 작업을 수행해야합니다.
인한 문제 :
나는 가게에서 액션 핸들러에서 작업을 트리거 것은 안티 패턴입니다 EVERYWHERE를 참조하십시오.
어떻게 올바르게 설계해야합니까?
나는 비슷한 문제를 직접 파악하기가 어려웠다. 좀 더 자세한 정보를 제공 할 수 있습니까? 어떻게 GroupsStore를 채우십니까? 내가 처음 알다시피 그것은 비어 있습니다. 다음에 어떻게 될까요? ajax 요청은 뷰의 액션에 의해 트리거되거나 데이터를 어디에서 가져 옵니까? –
ajax 요청은 검색 필터 UI의 componentDidMount()에서 호출 된 작업에 의해 트리거됩니다. 소스를 사용하고 있기 때문에, 아약스 약속을 얻지 못했습니다. 소스 메커니즘이 그것을 숨 깁니다. 게다가 점포는 서로에 대해 알지 않아야하며,이 원칙은 첫 번째 점포의 resultsReceived() 처리기의 몸체 안의 다른 점포를 비웃는 것을 금지합니다. 여기서 alt가 실패합니다. 상점간에 설계된 종속성을 금지하고 상점 외부의 코드에서 이러한 종속성을 표현하는 것이 불가능하도록 규칙을 조정합니다. 결국 나는 규칙을 위반하기로 결정했습니다. –