반응형
내가 현업에서 사용하는 데이트피커는 vue-bootstrap-datetimepicker이다.
https://www.npmjs.com/package/vue-bootstrap-datetimepicker
Datepicker 설치하기
npm i vue-bootstrap-datetimepicker
DatePicker 연결하기
아래 코드로 설치한 datePicker를 연결할 수 있다.
import datePicker from 'vue-bootstrap-datetimepicker';
만약 VueNuxt 프로젝트를 이용하는 분들이라면 datepicker를 import 할 때
window is not defined 오류를 자주 만나볼 수 있다.
이는 Nuxt 서버가 돌면서 서버 측에서 랜더링을 할당 객체를 찾을 수 없어서 나는 문제이다.
이럴 경우 SSR을 제외시켜줘야 한다.
위의 오류가 발생한다면, 해당 import code를. vue파일에 넣지 말고
Plugins폴더 아래에 파일을 하나 만들어서 해당 import 코드를 옮긴 뒤,
nuxt.config.js파일의 plugins 속성에 만든 파일을 연결하고 ssr 속성을 false로 설정해주면 된다.
실제 코드
plugins/client.js
import Vue from 'vue'
import 'bootstrap/dist/css/bootstrap.css';
import datePicker from 'vue-bootstrap-datetimepicker';
import 'pc-bootstrap4-datetimepicker/build/css/bootstrap-datetimepicker.css';
Vue.use(datePicker);
nuxt.config.js
module.exports = {
.
.
plugins: [
{ src: '~plugins/client', ssr: false }
],
.
.
};
Vue.js
<template>
<div style="padding:50px; position:relative;">
<date-picker v-model="date" :config="options"
style="width:200px;"/>
</div>
</template>
<script>
export default {
data() {
return {
date: new Date(),
options: {
format: 'YYYY-MM-DD',
}
}
},
}
</script>
실제 화면
반응형
'FrontEnd > Vue.js' 카테고리의 다른 글
[Vue.js] 이미지 경로를 변수, data 값, URL로 이미지 연결하는 방법 (require이용) (0) | 2021.06.15 |
---|---|
[vue/Nuxt] 부트스트랩 datetimepicker css 변경을 위해 debug 설정하기(bootstrap datepicker 안없어지게 하는 방법) (0) | 2021.06.05 |
[Vue/Nuxt] print-js를 이용해 특정 페이지 프린트 기능 추가하기 (0) | 2021.04.06 |
[javascript/Vue] moment.js 지원 중단으로 dayjs로 변경하기 (1) | 2021.03.24 |
[nuxt/vue] Are you interested in participating? 안내문 대응 방법 (0) | 2021.03.15 |