A: github 사이트에서는 불가능. ide에서 rebase 후 squash merge는 가능. but… github cli를 찾아보면 뭔가 나올지도>>?!
2. 컴포넌트분리
요거 조금만 더 자세히 어떤 내용인지 적어주실 수 있나요??
컴포넌트 분리를 레이아웃 단위로 하게 되었는데,
⇒ 다음 커피챗때 자세한 예시 가져오기
3. openapi-generator-cli 사용시 api base url 과 swagger url 노출문제
swagger주소가 노출되는 문제
inputSpec을 url로 설정시 swagger주소가 노출. swagger base url이 곧 api base url임
inputSpec을 로컬에 저장해두고 사용할 시 swagger주소가 노출되지는 않음 but, 최신화 수동(클라이언트 기준)
그렇다면 swagger주소도 환경변수로 하면 되는거 아닐까? ⇒ 명령어를 사용(openapi-generator-cli generate -i swagger주소)할땐 환경변수가 안 써짐, openapitools.json 설정파일을 사용할땐 json 파일에서 환경변수가 안써짐…(openapitools를 js로 바꿔서 사용할 시 오류가 남!)
mustaches 템플릿을 이용하면 generating시 아래처럼 환경변수로 바꿀 수 있음.
/*
baseApi.mustache 내부 수정사항
이전
export const BASE_PATH = {{{baseUrl}}}.replace(/\/+$/, "");
이후
export const BASE_PATH = import.meta.env.VITE_BASE_URL.replace(/\/+$/, "");
*/
//아래부분 처럼 되어있던걸
export const BASE_PATH = '원래 API 주소'.replace(/\/+$/, "");
//아래로 바꿔줌
export const BASE_PATH = import.meta.env.VITE_BASE_URL.replace(/\/+$/, "");
그러나, swagger문서가 바뀌면 명령어 yarn run template (지정해둠)를 실행해서 openapi-generator-cli가 default로 설정한 template을 받아온 뒤, baseApi.mustache내부를 위처럼 수정해 주어야함.
이 또한 수동으로 한다 가정하여도, 1번의 문제가 그대로 남아있음(swagger 파일 노출 문제)
결론 : swagger파일과 mustaches파일을 직접 최신화 하면 base url이 노출되지 않을것으로 여겨짐
질문 : 이보다 나은방법이 존재할까요…?! 문서를 열심히 뒤져봤습니다..ㅠㅠ
⇒ 고민할 필요x (백엔드 형님들이 고민..ㅎㅎ)
4. 폴더 구조
현재 구조
src/common/Ingame 을 src/pages/GamePage 내부로 옮기는 것이 문제가 될까요?! → pages라는 폴더에는 pages만 있어야 할 것 같은데 page와 연관된 컴포넌트들이나 hook, constants가 들어가게 되면 폴더 구조의 depth가 너무 깊어지는 것 같기도 하고, pages라는 폴더에 안 맞는것 같았다.
역할별로 나누면 응집도가 떨어지는 것 같고
페이지별로 나누면 응집도는 올라가지만 depth가 너무 깊어지는 것 같다.