|
|
@@ -16,129 +16,207 @@ app.use(DatePicker);
|
|
|
|
|
|
## 代码演示
|
|
|
|
|
|
-### 日期选择-每列不显示中文
|
|
|
+### 每列不显示中文
|
|
|
+:::demo
|
|
|
+
|
|
|
```html
|
|
|
-<nut-datepicker
|
|
|
- v-model="currentDate"
|
|
|
- @confirm="confirm"
|
|
|
- v-model:visible="show"
|
|
|
- :is-show-chinese="false"
|
|
|
-></nut-datepicker>
|
|
|
-```
|
|
|
-```javascript
|
|
|
+<template>
|
|
|
+ <nut-cell title="日期选择" :desc="desc" @click="open"></nut-cell>
|
|
|
+ <nut-datepicker
|
|
|
+ v-model="currentDate"
|
|
|
+ @confirm="confirm"
|
|
|
+ v-model:visible="show"
|
|
|
+ :is-show-chinese="false"
|
|
|
+ ></nut-datepicker>
|
|
|
+</template>
|
|
|
+
|
|
|
<script>
|
|
|
-export default createDemo({
|
|
|
- setup(props, { emit }) {
|
|
|
- const show = ref(false);
|
|
|
- const desc = ref('2020-1-1');
|
|
|
-
|
|
|
- return {
|
|
|
- show,
|
|
|
- desc
|
|
|
- open: (index) => {
|
|
|
+ import { ref } from 'vue';
|
|
|
+ export default {
|
|
|
+ setup(props) {
|
|
|
+ const show = ref(false);
|
|
|
+ const desc = ref('2020-1-1');
|
|
|
+ const currentDate = new Date(2020, 0, 1);
|
|
|
+ const open = ()=>{
|
|
|
show.value = true;
|
|
|
- },
|
|
|
- confirm: (res) => {
|
|
|
+ }
|
|
|
+ const confirm = (val)=>{
|
|
|
desc.value = val.join('-');
|
|
|
}
|
|
|
- };
|
|
|
- }
|
|
|
-});
|
|
|
+ return {
|
|
|
+ currentDate,
|
|
|
+ show,
|
|
|
+ desc,
|
|
|
+ open,
|
|
|
+ confirm
|
|
|
+ };
|
|
|
+ }
|
|
|
+ };
|
|
|
</script>
|
|
|
+
|
|
|
```
|
|
|
-### 日期选择-限制开始结束时间
|
|
|
+:::
|
|
|
+
|
|
|
+### 限制开始结束时间
|
|
|
+:::demo
|
|
|
+
|
|
|
```html
|
|
|
-<nut-datepicker
|
|
|
- v-model="currentDate"
|
|
|
- :min-date="minDate"
|
|
|
- :max-date="maxDate"
|
|
|
- @confirm="confirm"
|
|
|
- v-model:visible="show"
|
|
|
- :is-show-chinese="false"
|
|
|
-></nut-datepicker>
|
|
|
-```
|
|
|
-```javascript
|
|
|
+<template>
|
|
|
+ <nut-cell title="日期选择" :desc="desc" @click="open"></nut-cell>
|
|
|
+ <nut-datepicker
|
|
|
+ v-model="currentDate"
|
|
|
+ :min-date="minDate"
|
|
|
+ :max-date="maxDate"
|
|
|
+ @confirm="confirm"
|
|
|
+ v-model:visible="show"
|
|
|
+ :is-show-chinese="false"
|
|
|
+ ></nut-datepicker>
|
|
|
+</template>
|
|
|
+
|
|
|
<script>
|
|
|
-export default createDemo({
|
|
|
- setup(props, { emit }) {
|
|
|
- const show = ref(false);
|
|
|
- const desc = ref('2020-1-1');
|
|
|
-
|
|
|
- return {
|
|
|
- show,
|
|
|
- desc,
|
|
|
- minDate: new Date(2020, 0, 1),
|
|
|
- maxDate: new Date(2025, 10, 1),
|
|
|
- open: (index) => {
|
|
|
- show.value = true;
|
|
|
- },
|
|
|
- confirm: (res) => {
|
|
|
- desc.value = val.join('-');
|
|
|
- }
|
|
|
- };
|
|
|
- }
|
|
|
-});
|
|
|
+ import { ref } from 'vue';
|
|
|
+ export default {
|
|
|
+ setup(props) {
|
|
|
+ const show = ref(false);
|
|
|
+ const desc = ref('2020-1-1');
|
|
|
+ const currentDate = new Date(2020, 0, 1);
|
|
|
+ return {
|
|
|
+ show,
|
|
|
+ desc,
|
|
|
+ currentDate,
|
|
|
+ minDate: new Date(2020, 0, 1),
|
|
|
+ maxDate: new Date(2025, 10, 1),
|
|
|
+ open: (index) => {
|
|
|
+ show.value = true;
|
|
|
+ },
|
|
|
+ confirm: (res) => {
|
|
|
+ desc.value = val.join('-');
|
|
|
+ }
|
|
|
+ };
|
|
|
+ }
|
|
|
+ };
|
|
|
</script>
|
|
|
```
|
|
|
-### 日期时间-限制开始结束时间(有默认值)
|
|
|
+:::
|
|
|
+### 限制开始结束时间(有默认值)
|
|
|
+:::demo
|
|
|
+
|
|
|
```html
|
|
|
-<nut-datepicker
|
|
|
- v-model="currentDate"
|
|
|
- :min-date="minDate"
|
|
|
- :max-date="maxDate"
|
|
|
- type="datetime"
|
|
|
- @confirm="confirm"
|
|
|
- v-model:visible="show"
|
|
|
-></nut-datepicker>
|
|
|
-```
|
|
|
-```javascript
|
|
|
+<template>
|
|
|
+ <nut-cell title="日期选择" :desc="desc" @click="open"></nut-cell>
|
|
|
+ <nut-datepicker
|
|
|
+ v-model="currentDate"
|
|
|
+ :min-date="minDate"
|
|
|
+ :max-date="maxDate"
|
|
|
+ type="datetime"
|
|
|
+ @confirm="confirm"
|
|
|
+ v-model:visible="show"
|
|
|
+ ></nut-datepicker>
|
|
|
+</template>
|
|
|
<script>
|
|
|
-export default createDemo({
|
|
|
- setup(props, { emit }) {
|
|
|
- const show = ref(false);
|
|
|
- const desc = ref('2020年-1月-1日-0时-0分');
|
|
|
-
|
|
|
- return {
|
|
|
- show,
|
|
|
- desc,
|
|
|
- minDate: new Date(2020, 0, 1),
|
|
|
- maxDate: new Date(2025, 10, 1),
|
|
|
- open: (index) => {
|
|
|
- show.value = true;
|
|
|
- },
|
|
|
- confirm: (res) => {
|
|
|
- desc.value = val.join('-');
|
|
|
- }
|
|
|
- };
|
|
|
- }
|
|
|
-});
|
|
|
+ import { ref } from 'vue';
|
|
|
+ export default {
|
|
|
+ setup(props) {
|
|
|
+ const show = ref(false);
|
|
|
+ const desc = ref('2020年-1月-1日-0时-0分');
|
|
|
+ const currentDate = new Date(2020, 0, 1);
|
|
|
+ return {
|
|
|
+ show,
|
|
|
+ desc,
|
|
|
+ currentDate,
|
|
|
+ minDate: new Date(2020, 0, 1),
|
|
|
+ maxDate: new Date(2025, 10, 1),
|
|
|
+ open: (index) => {
|
|
|
+ show.value = true;
|
|
|
+ },
|
|
|
+ confirm: (res) => {
|
|
|
+ desc.value = val.join('-');
|
|
|
+ }
|
|
|
+ };
|
|
|
+ }
|
|
|
+ };
|
|
|
</script>
|
|
|
```
|
|
|
-### 时间选择-12小时制
|
|
|
+:::
|
|
|
+
|
|
|
+### 限制开始结束小时
|
|
|
+:::demo
|
|
|
```html
|
|
|
-<nut-datepicker
|
|
|
- v-model="currentDate"
|
|
|
- type="time"
|
|
|
- :min-date="minDate"
|
|
|
- :max-date="maxDate"
|
|
|
- :is-use12-hours="true"
|
|
|
- @confirm="confirm"
|
|
|
- v-model:visible="show"
|
|
|
-></nut-datepicker>
|
|
|
-```
|
|
|
-### 时间选择-分钟数递增步长设置
|
|
|
+<template>
|
|
|
+ <nut-cell title="日期选择" :desc="desc" @click="open"></nut-cell>
|
|
|
+ <nut-datepicker
|
|
|
+ v-model="currentDate"
|
|
|
+ type="time"
|
|
|
+ :min-date="minDate"
|
|
|
+ :max-date="maxDate"
|
|
|
+ :is-use12-hours="true"
|
|
|
+ @confirm="confirm"
|
|
|
+ v-model:visible="show"
|
|
|
+ ></nut-datepicker>
|
|
|
+</template>
|
|
|
+<script>
|
|
|
+ import { ref } from 'vue';
|
|
|
+ export default {
|
|
|
+ setup(props) {
|
|
|
+ const show = ref(false);
|
|
|
+ const desc = ref('0时-0分-0秒');
|
|
|
+
|
|
|
+ return {
|
|
|
+ show,
|
|
|
+ desc,
|
|
|
+ minDate: new Date(2020, 0, 1),
|
|
|
+ maxDate: new Date(2025, 10, 1),
|
|
|
+ open: (index) => {
|
|
|
+ show.value = true;
|
|
|
+ },
|
|
|
+ confirm: (res) => {
|
|
|
+ desc.value = val.join('-');
|
|
|
+ }
|
|
|
+ };
|
|
|
+ }
|
|
|
+ };
|
|
|
+</script>
|
|
|
+```
|
|
|
+:::
|
|
|
+### 分钟数递增步长设置
|
|
|
+:::demo
|
|
|
```html
|
|
|
-<nut-datepicker
|
|
|
- v-model="currentDate"
|
|
|
- type="time"
|
|
|
- :minute-step="5"
|
|
|
- :min-date="minDate"
|
|
|
- :max-date="maxDate"
|
|
|
- :is-use12-hours="true"
|
|
|
- @confirm="confirm"
|
|
|
- v-model:visible="show"
|
|
|
-></nut-datepicker>
|
|
|
-```
|
|
|
+<template>
|
|
|
+ <nut-cell title="日期选择" :desc="desc" @click="open"></nut-cell>
|
|
|
+ <nut-datepicker
|
|
|
+ v-model="currentDate"
|
|
|
+ type="time"
|
|
|
+ :minute-step="5"
|
|
|
+ :min-date="minDate"
|
|
|
+ :max-date="maxDate"
|
|
|
+ @confirm="confirm"
|
|
|
+ v-model:visible="show"
|
|
|
+ ></nut-datepicker>
|
|
|
+</template>
|
|
|
+<script>
|
|
|
+ import { ref } from 'vue';
|
|
|
+ export default {
|
|
|
+ setup(props) {
|
|
|
+ const show = ref(false);
|
|
|
+ const desc = ref('0时-0分-0秒');
|
|
|
+
|
|
|
+ return {
|
|
|
+ show,
|
|
|
+ desc,
|
|
|
+ minDate: new Date(2020, 0, 1),
|
|
|
+ maxDate: new Date(2025, 10, 1),
|
|
|
+ open: (index) => {
|
|
|
+ show.value = true;
|
|
|
+ },
|
|
|
+ confirm: (res) => {
|
|
|
+ desc.value = val.join('-');
|
|
|
+ }
|
|
|
+ };
|
|
|
+ }
|
|
|
+ };
|
|
|
+</script>
|
|
|
+```
|
|
|
+:::
|
|
|
|
|
|
## API
|
|
|
|
|
|
@@ -149,7 +227,6 @@ export default createDemo({
|
|
|
| v-model | 初始值 | Date | `null` |
|
|
|
| v-model:visible | 是否可见 | Boolean | `false` |
|
|
|
| type | 类型,日期'date', 日期时间'datetime',时间'time' | String | `'date'` |
|
|
|
-| is-use12-hours | 是否十二小时制度,只限类型为'time'时使用 | Boolean | `false` |
|
|
|
| minute-step | 分钟步进值 | Number | `1` |
|
|
|
| is-show-chinese | 每列是否展示中文 | Boolean | `false` |
|
|
|
| title | 设置标题 | String | `null` |
|