Ant Design Vue DatePicker日期选择框用法包括浏览器cdn引入js及设置中文的用法

本文讲解Ant Design Vue DatePicker日期选择框用法包括浏览器cdn引入js的用法。如果你是使用node.js webpack开发,那么简单阅读即可,如果你是通过html代码直接引用js的方式开发则需要注意以下三点(完整代码在文章底部)。
1,引用moment.js。
2,注意引用JS文件的位置,需要把js放在第一个位置否则DatePicker组件会报错。
3,引用本地化库

四个基础组件

DatePicker ,日期组件
MonthPicker,月份组件
RangePicker,区间选择组件
WeekPicker ,第几周组件

Node.js Webpack基本用法

<template>
<a-locale-provider :locale="locale">
  <div>
    <a-date-picker @change="onChange" />
    <br />
    <a-month-picker @change="onChange" placeholder="选择月份" />
    <br />
    <a-range-picker @change="onChange" />
    <br />
    <a-week-picker @change="onChange" placeholder="选择星期" />
  </div>
  </a-locale-provider>
</template>
<script>
//设置中文
import zhCN from 'ant-design-vue/lib/locale-provider/zh_CN';
export default {
  data() {
      return {
        locale: zhCN,
      };
    },
  methods: {
    onChange(date, dateString) {
      console.log(date, dateString);
    },
  },
};
</script>

UMD版(浏览器直接引用JS方式)

引用moment.js和ntd-with-locales.js并注意引用js的顺序,完整代码如下
http://www.itxst.com/ant-design-vue/jzuuzmv7.html

<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <title>Ant Design Vue DatePicker例子</title>
    <script src="http://www.itxst.com/package/ant-design-vue/moment.js"></script>
    <script src="http://www.itxst.com/package/vue/vue.min.js"></script>
    <script src="http://www.itxst.com/package/ant-design-vue/antd.js"></script>
    <link href="http://www.itxst.com/package/ant-design-vue/antd.min.css" rel="stylesheet" />
    <!--国际化-->
    <script src="http://www.itxst.com/package/ant-design-vue/antd-with-locales.js"></script>
    <style>
        body {
            padding-top: 10px
        }
    </style>
</head>
<body>
  <div id="app">
   <div :style="{  paddingBottom:'10px' }">
      <a-locale-provider :locale="locales.zh_CN">
       <a-date-picker :default-value="moment(getCurrentDate(),'YYYY-MM-DD')"></a-date-picker>
      </a-locale-provider>
    </div>
  </div>
<script>
    //antd vue本地化
    const { LocaleProvider, locales } = window.antd;
    var app = new Vue({
        el: '#app',
        data() {
            return {
                locales,
                defDate: null
            };
        },
        methods: {
            moment,//挂载moment
            getCurrentDate() {
                return new Date().toLocaleDateString();
            },
            onChange(date, dateString) {
                console.log(date, dateString);
            }
        },
        created: function () {
            //根据自己的业务情况自己调整中文描述
            moment.locale('zh-cn', {
                months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),
                monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),
                weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),
                weekdaysShort: '周日_周一_周二_周三_周四_周五_周六'.split('_'),
                weekdaysMin: '日_一_二_三_四_五_六'.split('_'),
                longDateFormat: {
                    LT: 'HH:mm',
                    LTS: 'HH:mm:ss',
                    L: 'YYYY-MM-DD',
                    LL: 'YYYY年MM月DD日',
                    LLL: 'YYYY年MM月DD日Ah点mm分',
                    LLLL: 'YYYY年MM月DD日ddddAh点mm分',
                    l: 'YYYY-M-D',
                    ll: 'YYYY年M月D日',
                    lll: 'YYYY年M月D日 HH:mm',
                    llll: 'YYYY年M月D日dddd HH:mm'
                },
                meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
                meridiemHour: function (hour, meridiem) {
                    if (hour === 12) {
                        hour = 0;
                    }
                    if (meridiem === '凌晨' || meridiem === '早上' ||
                        meridiem === '上午') {
                        return hour;
                    } else if (meridiem === '下午' || meridiem === '晚上') {
                        return hour + 12;
                    } else {
                        // '中午'
                        return hour >= 11 ? hour : hour + 12;
                    }
                },
                meridiem: function (hour, minute, isLower) {
                    const hm = hour * 100 + minute;
                    if (hm < 600) {
                        return '凌晨';
                    } else if (hm < 900) {
                        return '早上';
                    } else if (hm < 1130) {
                        return '上午';
                    } else if (hm < 1230) {
                        return '中午';
                    } else if (hm < 1800) {
                        return '下午';
                    } else {
                        return '晚上';
                    }
                },
                calendar: {
                    sameDay: '[今天]LT',
                    nextDay: '[明天]LT',
                    nextWeek: '[下]ddddLT',
                    lastDay: '[昨天]LT',
                    lastWeek: '[上]ddddLT',
                    sameElse: 'L'
                },
                dayOfMonthOrdinalParse: /\d{1,2}(日|月|周)/,
                ordinal: function (number, period) {
                    switch (period) {
                        case 'd':
                        case 'D':
                        case 'DDD':
                            return number + '日';
                        case 'M':
                            return number + '月';
                        case 'w':
                        case 'W':
                            return number + '周';
                        default:
                            return number;
                    }
                },
                relativeTime: {
                    future: '%s内',
                    past: '%s前',
                    s: '几秒',
                    ss: '%d秒',
                    m: '1分钟',
                    mm: '%d分钟',
                    h: '1小时',
                    hh: '%d小时',
                    d: '1天',
                    dd: '%d天',
                    M: '1个月',
                    MM: '%d个月',
                    y: '1年',
                    yy: '%d年'
                },
                week: {
                    // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效
                    dow: 1, // Monday is the first day of the week.
                    doy: 4  // The week that contains Jan 4th is the first week of the year.
                }
            })


        },
    });
</script>
</body>
</html>

例子

快速入门 Button 按钮 Affix 固钉 Breadcrumb 面包屑 Dropdown 下拉菜单 Dropdown 下拉菜单 Dropdown 展开隐藏方法 Dropdown 属性及事件 Menu 导航菜单 Menu 导航菜单 Menu 导航菜单属性及事件 Pagination 分页 Pagination 跳转 Pagination 自定义下拉选项 Pagination 选择每页数量 Pagination 自定义页码文字 Pagination 样式风格 Pagination 属性列表 Pagination 事件列表 Steps 步骤条 Steps 步骤条基本用法 Steps 自定义图标和html Steps 属性列表 AutoComplete 自动填充 AutoComplete 自动完成组件 AutoComplete 前端筛选函数 AutoComplete 自定义选项 AutoComplete Ajax服务器端数据 AutoComplete 查询模式 AutoComplete 属性列表 AutoComplete 事件 AutoComplete 方法列表 Cascader 级联选择 Cascader 基础用法 Cascader 搜索筛选 Cascader ajax服务器端加载 Cascader 样式及自定义图标 Cascader fieldNames 自定义字段 Cascader API属性及事件 Cascader 属性及事件Node.js版 Cascader 属性及事件浏览器版 Checkbox 多选框 Checkbox 多选框用法 Checkbox 自定义布局 Checkbox 全选反选 Checkbox 属性事件列表 DatePicker 日期选择框 DatePicker 日期选择框用法 DatePicker 设置不可选日期 DatePicker 选择时间 DatePicker 设置日期格式 DatePicker 日期范围选择 DatePicker 定制日期单元格 DatePicker 自定义渲染 DatePicker 属性和事件 Input 输入框 Input 输入框用法 Input 密码框 Input 图标 Input 搜索框 Input 格式化提示 Input 属性及事件列表 Input addonAfter属性 InputNumber 数字输入框 InputNumber 数字输入框 InputNumber 属性和事件 Mentions 提及 Mentions提及用法 Mentions 属性和事件 Radio 单选框 Radio 单选框用法 Radio 单选框分组 Radio 按钮样式 Radio 属性事件 Rate 评分组件 Rate 评分组件用法 Rate 属性和事件 Select 下拉框 Select 下拉框用法 Select 下拉框联动 Select 下拉框多选 Select 下拉框分组 Select 搜索框 Select 属性和事件 Slider 滑动输入条 Slider 滑动输入条 Slider 属性 afterChange 事件 change 拖动事件 Switch 开关 Switch 开关用法