일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- DataGridView 직접 입력
- pm2 시작
- 1883
- DatePicker
- 데이터테이블 데이터 넣기
- pm2
- setInterval 중지
- mySQL_Replication
- map이 undefined가 뜰 때
- c# datagridview 데이터 넣기
- html #select #option #multiple
- setInterval 외부 정지
- 공인IP
- Replication
- 맥 어드레스
- timepicker
- AntDesign
- pm2 확인
- mosquitto.conf
- 서버동기화
- datagridview 직접입력
- mosquitto
- pm2 설치
- listener 1883
- invalid data
- setInterval clear
- pm2 상태 확인
- setInterval 정지
- transfer
- allow_anonymouse
- Today
- Total
목록전체 글 (700)
개발 노트
antdesign에서 table 컴포넌트를 가져와 사용하던 도중 화면을 줄이면 table 넓이가 깨지는 현상이 일어났다. 이유는 뭔가 했더니 table의 부모값에 overflow:auto를 꾸준히 넣어놨다가 다 없앴는데 이것이 이유였다. 하지만 antd에서는 부모값에 overflow:auto가 있으면 첫행,첫열이 고정이 안잡히기에 사용할 수가 없었다. 그래서 부모값에 grid를 주고 사용하니 별 문제없이 작동하였다.
antdesign의 table을 쓸때 내부 옵션인 scroll을 써야 정상적으로 작동된다. 부모 값에 overflow auto를 주면 스크롤이 제대로 작동되지 않는다.
변수 선언과 state 선언의 방식 사이에 차이점이 있더라. function App() { let variable = '변수 선언'; const [state, setState] = useState('기본값') return ( {title} ); } 만약 위에 설정된 title의 값이 변수라면 다시 변경 후 재랜더링을 '해줘야'하는 경우가 발생한다. 하지만 state는 변경이 발생하면 state가 포함된 html을 '자동으로 랜더링'해준다. 따라서 state는 자주 변경이 될 것 같은 데이터들을 저장하는 것이 좋다. 즉 변수선언과 state선언의 차이점은 재랜더링의 차이라고 보면 되는데, 확 와닿지가 않는다. 좀더 작업하면서 차이점에 익숙해져야 할 것 같다.
버튼을 클릭하여 정보를 삭제하고자 할때 zustand에서 persist가 적용된 전역 state를 사용하면 삭제가 되는 듯 하다가 다시 정보가 복구되어 유지되더라. 그래서 나는 persist를 적용한 state와 적용하지 않은 state를 만들어 웹에서 마지막에 남은 정보를 useEffect로 persist된 state에 저장하고 버튼을 클릭시 onclickevent로 적용안된 state에 정보를 주어 그 정보를 실시간으로 사용 후 다시 persist된 state에 저장하는 식으로 사용하였다. persisted state -> nonpersisted state -> persisted state 와 같은 작업 순서인 것인데 이게 맞는 방법인지는 잘 모르겠다.
display: flex에 클래스 값을 줘서 @media max-width 900px일 때 display:none을 주니 충돌이 일어나서 작동하지 않더라. 해결방법은 오늘 수정해서 올려야겠다. !important를 줘서 우선순위를 주어서 해결했다. 즉 id값을 주던지 해서 우선순위를 주면 해결이 되는 듯 하다.
1. 웹 상단 급이기 정보창 1~64번 순환시키기 2. 각종 표 css 간격 맞추기