업무 중

입사 처음 후 부딪혔던 문제들 정리

콩유니 2024. 5. 30. 14:50

2022년에 첫 입사 후 나는 사수를 정말 잘 만났다.

사수 본인도 새로운 프로젝트에 적응하랴 새로운 사람들과 적응하랴,

또 나랑 입사한 물음표 살인마도 아니고 물음표 강도 동기때문에 아주 고생이셨을텐데

물어보는 질문마다 옆방 자리였던 내 자리까지 와서 답변 주시고 본인이 직접 테스트 해보시고

솔루션을 주셨다. 지금 생각해도 감사합니다....

 

2022/7/27

내가 구현하고자 했던 기능 문제점 해결 방법
인풋들을 가지고 와서 input 안의 값이 하나라도 length < 1이면 true, 아니면 false 리턴.
해당 boolean 값에 따라 button의 disable를 컨트롤 해야 함.
1. 각 인풋값을 훑고 각각 true나 false는 잘 가지고 와짐. 데이터도 잘 가지고 와지는데 전체를 훑어서 false를 반환하지는 못함.
2. for in에만 꽂혀서 그랬던 것 같음.
Object.values() 객체의 값만 담은 배열을 반환하는 코드를 이용해서 every로 조건 체크

 

내가 짠 코드

const inputCheck = computed(()=>{
  // let val;
  // for(let key in selectData.value){
  //   if(selectData.value[key] != null && selectData.value[key].length > 1){
  //     val = false;
  //   } else {
  //     val = true;
  //   }
  // }
  // return val;
})

 

 

사수가 주신 솔루션 적용

const inputCheck = computed(()=>{
  return selectData.value
    ? Object.values(selectData.value).every((e) => e !== '')
    : false;
})

 

 

 

2022/08/31

내가 구현하고자 했던 기능 문제점 해결 방법
테이블 컬럼에 맞추어 데이터 파싱 테이블의 컬럼명과 가지고 온 key 값이 달라서 매치를 못해 데이터가 파싱 되지 않았음. Vue Dev tools로 가져온 값과 컬럼명을 대조하다 알게 됨. Map을 이용하여 컬럼명이 달라도 데이터가 붙을 수 있게끔 구현.

 

사수가 주신 솔루션 적용

리스트 = res.map((e)=>{e[매치해야할컬럼명]=e[데이터의컬럼명]; return e;});