JAVASCRIPT让前端飞Vue.js专区

基于vue2.0+vuex的日期选择组件

2016-11-26  本文已影响2768人  WS林海峰

介绍

一个选择日期的vue组件
基于vue2.0
修改了之前版本依赖vuex,现在比较插件化 支持npm,更方便使用 。
想自己做vue插件的朋友也可以看下里面的实现的代码
github地址 https://github.com/jamielhf/vue/tree/master/calendar
我的博客地址 http://jamielhf.cn

demo展示&&项目中的使用

<img width = "384" src="http:https://img.haomeiwen.com/i3652052/623d4dc0a7d3e077.gif?imageMogr2/auto-orient/strip"/>
<img width = "300" src="http:https://img.haomeiwen.com/i3652052/051c7c9bc6d96b2e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240"/>

目录结构

demo 用vue-cli 的webpack-simple构建的

calendar
 |--dist build生成的目录
 |--doc   展示图片
 |--src
   |--assets 资源
   |--components
     |--calendar    日期组件
     |--dateScroll  滚动的子组件
   |--css
   |App.vue   入口
   |main.js   

组件使用

安装

npm i vue2-datepick --save

初始化

import Calendar from 'vue2-datepick';
Vue.use(Calendar);

使用

   <template>
     <div id="app">
       <p @click = "setDate" >点击设置日期(默认今天)</p>
       <p @click = "setDate2" >设定指定的日期(20150220)</p>
   
     <p>{{data}}</p>
     </div>
   </template>
   
   <script>
   
   
   export default {
     name: 'app',
     data () {
       return {
           data:'日期'
       }
     },
   
     methods:{
   
      setDate(){
          let vm = this;
         this.$calendar.show({
             onOk(data){
                 console.log(data)
                 vm.data= data.year+'-'+data.month+'-'+data.day;
                 console.log('确定')
             },
             onCancel(){
                 console.log('取消')
             }
         })
       },
         setDate2(){
             let vm = this;
             this.$calendar.show({
                 onOk(data){
                     vm.data= data.year+'-'+data.month+'-'+data.day;
                     console.log('确定')
                 },
                 onCancel(){
                     console.log('取消')
                 },
               year:2015,
               month:2,
               day:20,
             })
         }
     },
   }
   </script>

默认的年份是 1900 - 2050 如果需要可以在调用的时候传入参数

  this.$calendar.show({
         startYear:2000,
        endYear:2010,
     })

版本

1.0.4 更改初始化的代码

上一篇下一篇

猜你喜欢

热点阅读