注: 由于此组件基于 create-api 实现,所以在使用之前,请确保自己了解过 。
- 基本用法
通过 - createDatePicker 创建一个组件实例,配置 min、max 设定选择的日期范围,还可以通过 value 设置当前选择的日期。
- export default {
- methods: {
- showDatePicker() {
- if (!this.datePicker) {
- this.datePicker = this.- createDatePicker({
- title: 'Date Picker',
- min: new Date(2008, 7, 8),
- max: new Date(2020, 9, 20),
- value: new Date(),
- onSelect: this.selectHandle,
- onCancel: this.cancelHandle
- })
- }
- this.datePicker.show()
- },
- selectHandle(date, selectedVal, selectedText) {
- this.- createDialog({
- type: 'warn',
- content: `Selected Item:
- date: - {date}
- value: - {selectedVal.join(', ')}
- text: - {selectedText.join(' ')}`,- icon: 'cubeic-alert'
- }).show()
- },
- cancelHandle() {
- this.- createToast({
- type: 'correct',
- txt: 'Picker canceled',
- time: 1000
- }).show()
- }
- }
- }
- 列的配置
- 年月日时分秒选择器
同理,如果想要年月日时分秒选择器,则是以“年”开始的六列。
<cube-button @click="showDateTimePicker">Date Time Picker</cube-button>
- export default {
- methods: {
- showDateTimePicker() {
- if (!this.dateTimePicker) {
- this.dateTimePicker = this.- createDatePicker({
- title: 'Date Time Picker',
- min: new Date(2008, 7, 8, 8, 0, 0),
- max: new Date(2020, 9, 20, 20, 59, 59),
- value: new Date(),
- columnCount: 6,
- onSelect: this.selectHandle,
- onCancel: this.cancelHandle
- })
- }
- this.dateTimePicker.show()
- },
- selectHandle(date, selectedVal, selectedText) {
- this.- createDialog({
- type: 'warn',
- content: `Selected Item:
- date: - {date}
- value: - {selectedVal.join(', ')}
- text: - {selectedText.join(' ')}`,- icon: 'cubeic-alert'
- }).show()
- },
- cancelHandle() {
- this.- createToast({
- type: 'correct',
- txt: 'Picker canceled',
- time: 1000
- }).show()
- }
- }
- }
- 日期格式
你还可以通过 format 属性配置日期格式。
- export default {
- methods: {
- if (!this.formatPicker) {
- this.formatPicker = this.- createDatePicker({
- title: 'Use format',
- min: new Date(2008, 7, 8),
- max: new Date(2020, 9, 20),
- value: new Date(),
- format: {
- year: 'YY年',
- month: 'MM月',
- date: '第 D 日'
- },
- onSelect: this.selectHandle,
- onCancel: this.cancelHandle
- })
- }
- this.formatPicker.show()
- },
- selectHandle(date, selectedVal, selectedText) {
- this.- createDialog({
- type: 'warn',
- content: `Selected Item:
- date: - {date}
- value: - {selectedVal.join(', ')}
- text: - {selectedText.join(' ')}`,- icon: 'cubeic-alert'
- }).show()
- },
- cancelHandle() {
- this.- createToast({
- type: 'correct',
- txt: 'Picker canceled',
- time: 1000
- }).show()
- }
- }
- }
- updateProps
<cube-button @click="showUpdatePropsPicker">Use - updateProps</cube-button>
- format 子配置项
原文: