반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- Vuetify
- JavaScript
- Android
- electron-nuxt
- 프로세스 방지
- CSS
- error
- sort
- 동일 프로세스
- onsenui
- sequelize
- Electron
- nodejs
- bucket cors
- vuejs
- naver storage
- v-text-field height
- bucket max-key
- 동일 프로그램
- xlsx
- naver storage bucket error
- NUXT
- kotlin
- Vue
- onsen-ui
- c#
- MySQL
- f035d
- vuetifyjs
- v-select
Archives
- Today
- Total
앙큼한 개발기록
[vue div resize] 내부 화면 크기 조절하기 (onResize library를 겸한) 본문
테이블을 사용하면서 고객이 칼럼의 크기를 자유롭게 조절해 달라고 요청이 들어왔다.
기존에 사용하던 테이블 태그를 버리고 div를 이용해서 테이블의 컬럼을 자유롭게 조절할 수 있도록 구현 한 내용을
정리해 보고자 한다.
인터넷에 검색하니까 잘 안나오더라..
처음에는 테이블을 구현하고
css 를 이용해서 resize 속성을 넣어서 좌우로 마우스를 이용해 조절하게 해놓았다.
<div class="table">
<div class="thead">
<div class="tr">
<div class="th">이름</div>
...
..
</div>
</div>
<div class="tbody">
</div>
</div>
<style lans="scss">
.table {
display: flex;
flex-direction: column;
justify-content: space-between;
.thead {
.tr {
display: flex;
border-top: solid 1px rgb(186, 191, 199);
border-bottom: solid 1px rgb(186, 191, 199);
div {
font-weight: bold;
resize: horizontal; //좌우 조절
overflow: auto;
min-width: 60px; // 최소 값 설정 (이 이상은 줄어들지 않음)
&::-webkit-resizer {
background-color: transparent; (이게 조절하는 모양 없애주는거)
}
}
.th {
border-right: solid 1px rgb(186, 191, 199);
box-sizing: border-box;
color: rgb(24, 29, 31);
height: 34px;
display: flex;
justify-content: center;
align-items: center;
background-color: #f8f8f8;
}
}
}
}
</style>
근데 vue에서 v-on:resize 로 이벤트를 받을 수 없어서
이것 저것 찾던 중 resize 될때마다 호출 되게 할수 있고 resize에 대한 이벤트를 받을 수 있는 라이브러리가 있어서
적용했다.
내가 적용한 라이브러리 :vue-element-resize-detector
https://www.npmjs.com/package/vue-element-resize-detector
tag 에 [v-resize] 쓰고 [:resize]를 쓰면 사이즈 변할때 마다 자동으로 호출 된다.
'개발 > vue & nuxt' 카테고리의 다른 글
[naver storage] bucket cors 오류 (0) | 2023.08.16 |
---|---|
[vuetifyjs] v-select 높이, 화살표 변경 (0) | 2023.06.22 |
[vuetifyjs] v-text-field 높이값 조절 (0) | 2023.06.22 |
[vue/nuxt] xlsx file export (0) | 2023.02.06 |
Comments