Socket
Book a DemoInstallSign in
Socket

@vuesimple/vs-datepicker

Package Overview
Dependencies
Maintainers
0
Versions
50
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@vuesimple/vs-datepicker

A simple vue datepicker. Perfect for all your datepicker scenarios.

latest
Source
npmnpm
Version
3.0.9
Version published
Weekly downloads
42
44.83%
Maintainers
0
Weekly downloads
 
Created
Source

Vue Simple Datepicker

🗃 A simple vue detepicker. Perfect for all your datepicker scenarios.

A light weight vue datepicker plugin.

npm npm

forthebadge forthebadge forthebadge forthebadge forthebadge forthebadge


📺 Live Demo

Code Sandbox Demo: Link Code Sandbox: Link


🛠 Install

npm i @vuesimple/vs-datepicker

🚀 Usage

<template>
  <vs-datepicker
    label="Date"
    id="deliveryDate"
    v-model="form.date"
    placeholder="DD-MM-YYYY"
    format="DD-MM-YYYY"
  ></vs-datepicker>
</template>

<script>
  import VsDatepicker from '@vuesimple/vs-datepicker';

  export default {
    components: {
      VsDatepicker,
    },
  };
</script>

🌎 CDN

<script src="https://unpkg.com/@vuesimple/vs-datepicker@<version>/dist/vs-datepicker.min.js"></script>
// Main/Entry file
app.use(VsDatepicker.plugin);
<template>
  <vs-datepicker
    label="Date"
    id="deliveryDate"
    v-model="form.date"
    placeholder="DD-MM-YYYY"
    format="DD-MM-YYYY"
  ></vs-datepicker>
</template>

Nuxt.js

Nuxt Code Snippet

After installation,

  • Create a file /plugins/vs-datepicker.js

    import Vue from 'vue';
    import VsDatepicker from '@vuesimple/vs-datepicker';
    
    Vue.component('vs-datepicker', VsDatepicker);
    
  • Update nuxt.config.js

    module.exports = {
      ...
      plugins: [
        { src: '~plugins/vs-datepicker', mode: 'client' }
        ...
      ]
    }
    
  • In the page/ component

    <template>
      <vs-datepicker
        label="Date"
        id="deliveryDate"
        v-model="form.date"
        placeholder="DD-MM-YYYY"
        format="DD-MM-YYYY"
      ></vs-datepicker>
    </template>
    

Note

  • For older Nuxt versions, use <no-ssr>...</no-ssr> tag.
  • You can also do import VsDatepicker from '@vuesimple/vs-datepicker' & add in component:{VsDatepicker} and use it within component, without globally installing in plugin folder.

⚙ Props

| Name | Type | Default | Description | | ------------- | ------------------------- | ------------ | -------------------------------------------- | ----- | ---- | ----- | ------ | ------------------------- | | type | date | datetime | year | month | time | week | date | Select the type of picker | | format | Token | MM-DD-YYYY | To set the date format. similar to moment.js | | value-type | Value-Type | 'date' | Data type of the binding value/v-model. | | range | Boolean | false | If true, pick the range date | | label | String | Date | Label to datepicker | | isError | Boolean | - | Highlight input box with red if error | | required | Boolean | - | show * with label | | disabled | Boolean | - | Disable datepicker | | disabled-date | Function | - | Disable dates in datepicker | | id | String | - | Id added to datepicker component | | placeholder | String | - | Placeholder to datepicker input box | | lang | Object | - | Override the default locale | | editable | Boolean | false | Whether the input is editable | | clearable | Boolean | false | If false, don't show the clear icon | | is-compact | Boolean | false | Applies compact style to datepicker |


NOTE Example for maxdate

<vs-datepicker
  label="Date"
  id="deliveryDate"
  v-model="form.date"
  placeholder="DD-MM-YYYY"
  format="DD-MM-YYYY"
  :disabled-date="disabledDate"
></vs-datepicker>

<script>
  export default {
    methods: {
      disabledDates(date) {
        return date < new Date('Your Min Date') || date > new Date('Your Max Date');
      },
    },
  };
</script>

🔥 Events

NameDescription
v-modelWhen the value changes
changeWhen the value change(same as v-model)
openWhen panel opening
closeWhen panel closing

Token

UnitTokenOutput
YearYY70 71 ... 10 11
YYYY1970 1971 ... 2010 2011
Y-1000 ...20 ... 1970 ... 9999 +10000
MonthM1 2 ... 11 12
MM01 02 ... 11 12
MMMJan Feb ... Nov Dec
MMMMJanuary February ... November December
Day of MonthD1 2 ... 30 31
DD01 02 ... 30 31
Day of Weekd0 1 ... 5 6
ddSu Mo ... Fr Sa
dddSun Mon ... Fri Sat
ddddSunday Monday ... Friday Saturday
AM/PMAAM PM
aam pm
HourH0 1 ... 22 23
HH00 01 ... 22 23
h1 2 ... 12
hh01 02 ... 12
Minutem0 1 ... 58 59
mm00 01 ... 58 59
Seconds0 1 ... 58 59
ss00 01 ... 58 59
Fractional SecondS0 1 ... 8 9
SS00 01 ... 98 99
SSS000 001 ... 998 999
Time ZoneZ-07:00 -06:00 ... +06:00 +07:00
ZZ-0700 -0600 ... +0600 +0700
Week of Yearw1 2 ... 52 53
ww01 02 ... 52 53
Unix TimestampX1360013296
Unix Millisecond Timestampx1360013296123

Value Type

ValueDescription
'date'Returns a Date object
'timestamp'Returns a timestamp number
'format'Returns a string formatted using pattern of format
token(MM/DD/YYYY)Returns a string formatted using this pattern

Full lang config

{
  // the locale of formatting and parsing function
  formatLocale: {
    // MMMM
    months: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
    // MMM
    monthsShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
    // dddd
    weekdays: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
    // ddd
    weekdaysShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
    // dd
    weekdaysMin: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],
    // first day of week
    firstDayOfWeek: 0,
    // first week contains January 1st.
    firstWeekContainsDate: 1,
  },
}

Original credits to Vue2 Datepicker

Keywords

vue

FAQs

Package last updated on 08 Jan 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts