Technical
- useEffect() : component가 렌더링 될 때, 특정 로직을 실행 하거나, params 가 변경될 때 상태를 갱신한다.
- context: 전역 상태를 관리하는 방법. 데이터를 중앙에서 관리하고, 필요한 컴포넌트에서 쉽게 접근을 도와준다. props를 계층 구조의 깊은 곳에서도 데이터를 공유 할 수 있음. prop drilling 문제를 해결하고, 데이터의 흐름을 간단히 함.
- context 를 생성한다. (createContent)
- context data, function 사용 할 수 있는 custom hookdmf todtjsgksek.
- Provider를 생성한다. 데이터를 실제로 전달하는 계층
Product Development
- User input을 만드는 과정에서, 아이를 키우는 부모의 입장에서 너무 많은 input을 요구하면 시간에 쫓기는 부모 user 들의 이탈 가능성이 높아질 것 같다고 생각했음.
- 중요한 정보를 제외하고는 유저가 클릭해서 추가 정보를 입력 할 수 있는 화면을 구성함.
- Expired date 또는 Stage 같은 항목 또한 optional 한 부분임.
- 유저의 선택에 따라 작성할 수 있도록 Switch 를 적용함.
- 아이템 정보는 여러 스크린에서 공유하기 때문에 context 관리를 시작함.
- expiring soon/low stock/both status 상태 알림
- 리스트 화면에서 색맹 사용자를 고려한 색 배합으로 카드 색상 변경 및 아이콘 추가
- 필터 디자인
- 카테고리 및 상태에 따라서 필터링을 할 수 있도록 리스트 화면 위에 Menu 구성.
- 현재 선택된 필터링은 색을 넣어서 표시
- clear filters 버튼을 추가해서 사용자가 편리하게 모든 필터링을 해제 할 수 있도록 함.
- 게스트 모드
- 사용자에게 로그인 또는 비로그인을 선택해 사용 할 수 있도록 함.
- 바쁜 부모들은 로그인을 귀찮아 할 수도 있음.
- 처음 로그인을 해야하면 진입장벽이 높다고 느낌.
- 서베이에서 대부분의 부모들이 Inventory 관리는 혼자해서 굳이 공유 기능을 원하지 않을 수 있음.
Improvement for the future
- [ ] Add shopping list page: a purpose of sharing user’s account
- [ ] Add date, location filter for ascending/descending : ui 적으로 어떻게 추가해야할지 모르겠음
🚧 Currently waiting for TestFlight review!