-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
KDT0_KimTeukHee 직원관리서비스 #51
base: main
Are you sure you want to change the base?
Conversation
2023.08.09 1. index.html 추가 및 일부 작성 2. general.css 추가 및 일부 작성 3. theme.css 추가 및 일부 작성
2022.08.09 1. 폼 레이아웃 구성 2. 이미지 프리뷰 기능 구현 3. 추가 기능 구현 예정
2023.08.09 1. 테이블 레이아웃 구현 2. 모바일 반응형 고려 (모바일시 블록디스플레이로 변경)
2023.08.10
2023.08.11 1. 자주 쓰는 DOM객체 상수화 2. 프로필 등록 폼 스타일 수정
2023.08.11 1.SDK 설정 2. AWS 환경변수 설정(gitingnore)
2023.08.11
2023.08.14 1. S3에 프로필 당 하나의 폴더 생성 후 해당 폴더에 사진 및 추가 정보 저장 2. 파일 분리 및 리펙토링 예정
2023.08.14 1. addProfile => uploadProfile 파일명 변경 2. api 폴더 추가 및 파일 분리
2023.08.15
2023.08.15
2023.08.16 1. profile.html 추가 2. profile.css 추가 3. 해당 html 스크립트파일 추가
2023.08.16 1. profile.html 전용 스크립트 파일로 분리 2. listProfile.js에서 호출 3. Index.html 도큐멘트 스크립트로 로드된 특정 프로필 정보 key값 로컬스토리지에 저장 후, profile.html 도큐멘트 스크립트에서 해당 키값 활용가능하도록 구현함.
2023.08.16 1. main.js 파일 index.html 내부 스크립트로 이전 2. 관리 상 해당 방법이 좋을 것이라 판단.
2023.08.16 1. root경로로 변경
2023.08.16 1. constant 폴더 생성 2. Rename : constant.js -> home.js 3. profile.html 객체 상수화 예정
2023.08.16 1. 기능과 무관한 변경사항
2023.08.17
2023.08.17 1. 수정 폼 열기 기능 추가 2. 수정 폼 닫기 기능 추가
2023.08.17 - 프로필 사진 및 정보 수정 기능 구현
2023.08.17
2023.08.18
2023.08.18 - 직원 등록 폼 모달창으로 변경
2023.08.18 1. 프로필 수정 폼 모달창으로 구현 2. 프로필 상세페이지 반응형 디자인 추가
2023.08.18
2023.08.18
2023.08.18 - 헤더 보완 - 모달창 보완
2023.08.18 - 사진 미업로드시 기본 이미지로 설정
2023.08.18
2023.08.18
2023.08.18
2023.08.18 - 마우스오버 시 애니메이션
2023.08.18
2023.08.18
2023.08.18 - 배포 url 추가
2023.08.18 - 사진첨부 오류 수정
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
반응형 웹으로 만드신 부분이 좋았던 것 같습니다.
저도 참고해서 리팩토링 과정 때 한번 적용해보려고 합니다.
localStorage 저장하고 사용하신 부분도 좋은 것 같습니다.
position: edit_position.value, | ||
}; // 사진을 제외한 프로필 정보 | ||
|
||
const key = localStorage.getItem("profile"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
이 부분처럼 local에 저장해놓고 사용했으면 정보 가져오기 편했을 것 같아요 ~
export const bucketName = "turkey-mm-bucket"; | ||
export const region = "ap-northeast-2"; | ||
export const S3endpoint = | ||
"https://turkey-mm-bucket.s3.ap-northeast-2.amazonaws.com"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
aws 실제로 사용하는건 처음봤어요!
폴더구조가 정말 깔끔하고, 각 파일별로 역할을 잘 분담하여 어떤 역할을 하는지 직관적으로 알 수 있어서 좋았습니다! |
폴더 구조나 파일명을 명확하게 잡아주셔서, 각 폴더나 파일의 이름만으로 어떤 기능에 대한 내용인지 또는 어떤 목적을 가지고 있는지에 대해 알 수 있게 만들어주신 부분이 좋았습니다! 그리고 constant 폴더를 통해서 특정 id값을 가지는 DOM 요소를 미리 정의해두고, api쪽 js 파일에서는 import해와서 사용하신 부분 보고 정말 놀랐습니다! 필요할 때마다 getElementById() 메서드를 통해 요소에 접근할수도 있지만, 이렇게 따로 선언해두시고, 가져와서 사용하는 편이 구조도 더 간결해지고 보기 편하다는 걸 이번 특희님 프로젝트를 통해서 배울 수 있었습니다! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
깔끔하게 필수 요소와 기능들을 구현하시고
js 도 잘 짜주신 것 같아서 좋습니다.
일부 사항에 대하여 코멘트 하였고
중복되는 부분은 생략하였습니다.
고생하셨습니다.
|
||
// 프로필 상세 컨테이너 | ||
export const profile = document.getElementsByClassName("profile")[0]; | ||
export const manageBar = document.getElementsByClassName("manage-bar")[0]; // 수정 및 삭제 버튼 컨테이너 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
사용하는 곳이 없는 것 같습니다.
<script type="module" src="/js/api/editProfile.js"></script> | ||
<script type="module" src="/js/api/deleteProfile.js"></script> | ||
<script type="module"> | ||
import { S3endpoint } from "/js/constant/aws.js"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
다른 경우와 동일하게 파일로 빼서 작성하는 것이 좋을 것 같습니다.
let nameInput = document.querySelector("#edit-name"); | ||
nameInput.value = key; | ||
editForm.style.display = "block"; | ||
modal.style.visibility = "visible"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
직접적으로 스타일을 변경하는 것이 아닌
class로 관리하는 것이 좋을 것 같습니다.
const container = document.createElement("div"); | ||
container.classList.add(`member-info__${key}`); | ||
container.innerText = info[key]; | ||
tableRow.appendChild(container); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
반복문 안에서 appendChild 와 같이 DOM 조작은 줄이고
한번에 붙이는 방법이 좋을 것 같습니다.
TK Company 직원 관리 서비스
스택
요구사항
주요 기능
주요 기능 상세
- 업로드 사진 미리보기
- 사진 미등록 시,
기본프로필 이미지 설정
- 사진/인적사항 변경
USER-FLOW