목록Flutter/중계 플랫폼 프로젝트 (34)
seong

기본적인 등록 페이지 구조이다. 아이디는 readonly로 해준다 InsertPage의 구조 - 입력 폼은 위젯으로 따로 빼서 Form으로 관리를 한다. - 폼은 회원가입, 로그인과 똑같다. 이미지 관련 부분 - 삼항 연산자를 사용해 이미지가 선택 되었다면 해당 이미지를 띄워주고 그게 아니라면 기본 이미지를 띄워주었다 이미지 띄워주는 실행 함수 - ImagePicker 라이브러리를 사용해주었다. - IOS는 갤러리에서 가져오기 위해서 권한을 추가해주어야 한다. (안해주면 버튼 클릭시 에뮬레이터 꺼진다.) - https://seong9566.tistory.com/269 - 이미지가 선택 되면 setState로 선택된 이미지로 다시 그려준다. - 이미지를 인코딩해서 전달해준다. - 이미지 선택 버튼

Controller - 업데이트를 하면 세션에 유저 정보도 업데이트가 되어야 하기 때문에 성공하면 한번 초기화 시켜주었다. - 업데이트가 완료 되었다면 pop으로 업데이트 페이지의 Stack를 지우고 이전페이지로 간다. - 업데이트는 jwtToken값도 서버로 전달 해주어야 한다 이 부분은 어차피 세션에 있는 값으로 하기도 하고, 여러 메서드가 필요할 수 있어서 HttpConnector에서 모두 진행했다. Service HttpConnector

회원가입 페이지와 비슷하게 구성하지만, 다른점은 아래에 버튼이 생성된다. Build - Controller은 Provider이다, 그래서 사용하기 위해서 Consumer위젯으로 바꾸었다. - 입력창을 띄웠을 때 OverFlow가 발생한다. SingleChildSrcollerView로 감싸주어서 해결했다. - main을 보았을때 보기 쉽기 위해서 메서드를 많이 사용했다, -> 이렇게 사용했을때 메서드의 재활용이 필요하다면 사용이 가능하다. - update도 폼으로 관리를 하는데 여기서 기존의 데이터가 필요하기 때문에 파라미터로 넘겨주었다. Update는 TextField의 반복이라서 메서드로 빼주고 사용했다. 수정 완료 버튼 - 버튼을 누르면 Controller로 요청을 수정 요청을 해 진행하게 된다. ..

자동 로그인은 디바이스에 토큰 값이 있다면 서버에 유저 정보를 한번 초기화 시켜준다. 그리고 mainPaged에서 isLogin을 통해서 어디로 이동 할지 정해주었다. Controller - 로그인이 성공하면 서버에서 토큰 값을 주는데, 이 값을 디바이스 토큰에 저장해야한다 , 이 부분은 토큰 및 세션은 전역에서 사용해야 하기 때문에 UserServcie로 안적고 LocalService에서 처리 해준다. - 로그인 이후 Navigator에서 페이지 이동의 Stack관리를 해주어야 하는데 로그인을 하면 이전 페이지에 대한 정보는 어차피 필요 없기 때문에 RemoveUntil를 사용했다. LocalService - 디바이스에 토큰을 저장하기 위한 라이브러리 사용 : https://pub.dev/package..

아키텍처 - View : 클라이언트에게 보여지는 화면 - ViewModel : 화면이 가지고 있어야할 데이터들 - Controller : 비즈니스 로직을 담당 - Service : 서버와 통신, 파싱을 담당 - HttpConnector : 실질적인 서버와 통신을 하고 Response 를 돌려준다. 1. Controller 작성 - Service는 ref를 가지면 이후 ref때문에 모두 생성자로 넘겨주는 일이 발생 할 수 있다고 해서, 싱글톤 디자인 패턴을 사용했다. - 회원가입 페이지로 이동할 때 role값을 넘겨주어야하는데, 원래는 rout에 설계를 했었지만, 값을 넘겨주기위해서 MaterialPageRoute를 사용해서 argument로 넘겨주었다. - join메서드에서는 응답받은 ResponseDt..

그려야할 페이지는 아래와 같다. 1. TextField를 사용해서 클라이언트의 텍스트를 입력 받는다. 2. Form을 사용해서 상태 관리 3. 관심사는 Dialog를 사용해서 선택 기본 구조는 Scaffold -> Form -> FormField 이렇게 된다. 그리고 만들때 ScrollerController를 사용해서 TextField를 클릭시 키보드가 올라가게 해준다. 1. JoinPage 큰 구조 - 서버에 요청할 객체는 싱글톤으로 만들어서 계속 값을 입력할때 마다 Set해주었다. import 'package:finalproject_front/dto/request/auth_req_dto.dart'; import 'package:finalproject_front/pages/auth/components/..

이전 테스트에 이어서 진행 - https://seong9566.tistory.com/270 카카오 페이 pg사 연결 하고 결제 테스트 까지 진행해보기 1. 아임포트 가입 및 가맹점 번호 확인 (가맹점 번호 = 나) iamport홈페이지 -> 회원가입 -> 로그인 -> 왼쪽 패널에서 상점 * 계정 관리 -> 내 식별코드 확인을 해보면 , 내 가맹점 식별코드, REST API Key가 있다. REST API Key는 결제 이후 iamport 서버에 정보가 필요할때 사용된다. Ex)내 서버에 저장된 정보 iamport서버 정보 비교 2. 테스트 연동 하기 실 결제가 아닌 테스트만 할 것 이기때문에 테스트 연동을 해야한다. 카카오 페이지를 테스트 하기 위해서 테스트 -> 카카오페이 -> 카카오페이 -> 추가 만..

ImagePick 라이브러리 사용했는데 이미지 선택 하려고 하면 에뮬레이터 연결이 끊키고 바로 꺼진다. ios는 이미지 선택 권한을 주어야 한다. 아래 코드를 ios -> Info.plist추가해주면 된다. NSCameraUsageDescription Access to take a photo by camera NSAppleMusicUsageDescription Access to pick a photo NSPhotoLibraryUsageDescription Access to pick a photo