直播軟體app開發,vant 時間選擇控制元件修訂為只顯示年份
直播軟體app開發,vant 時間選擇控制元件修訂為只顯示年份
import _extends from "@babel/runtime/helpers/esm/extends"; import { createNamespace } from '../utils'; import { isDate } from '../utils/validate/date'; import { padZero } from '../utils/format/string'; import { getTrueValue, getMonthEndDay } from './utils'; import { sharedProps, TimePickerMixin } from './shared'; var currentYear = new Date().getFullYear(); var _createNamespace = createNamespace('date-picker'), createComponent = _createNamespace[0]; export default createComponent({ mixins: [TimePickerMixin], props: _extends({}, sharedProps, { type: { type: String, default: 'datetime' }, minDate: { type: Date, default: function _default() { return new Date(currentYear - 10, 0, 1); }, validator: isDate }, maxDate: { type: Date, default: function _default() { return new Date(currentYear + 10, 11, 31); }, validator: isDate } }), watch: { filter: 'updateInnerValue', minDate: 'updateInnerValue', maxDate: 'updateInnerValue', value: function value(val) { val = this.formatValue(val); if (val.valueOf() !== this.innerValue.valueOf()) { this.innerValue = val; } } }, computed: { ranges: function ranges() { var _this$getBoundary = this.getBoundary('max', this.innerValue), maxYear = _this$getBoundary.maxYear, maxDate = _this$getBoundary.maxDate, maxMonth = _this$getBoundary.maxMonth, maxHour = _this$getBoundary.maxHour, maxMinute = _this$getBoundary.maxMinute; var _this$getBoundary2 = this.getBoundary('min', this.innerValue), minYear = _this$getBoundary2.minYear, minDate = _this$getBoundary2.minDate, minMonth = _this$getBoundary2.minMonth, minHour = _this$getBoundary2.minHour, minMinute = _this$getBoundary2.minMinute; var result = [{ type: 'year', range: [minYear, maxYear] }, { type: 'month', range: [minMonth, maxMonth] }, { type: 'day', range: [minDate, maxDate] }, { type: 'hour', range: [minHour, maxHour] }, { type: 'minute', range: [minMinute, maxMinute] }]; switch (this.type) { case 'date': result = result.slice(0, 3); break; case 'year-month': result = result.slice(0, 2); break; case 'month-day': result = result.slice(1, 3); break; case 'datehour': result = result.slice(0, 4); break; //修訂這裡 case 'year': result = result.slice(0,1); break; } if (this.columnsOrder) { var columnsOrder = this.columnsOrder.concat(result.map(function (column) { return column.type; })); result.sort(function (a, b) { return columnsOrder.indexOf(a.type) - columnsOrder.indexOf(b.type); }); } return result; } }, methods: { formatValue: function formatValue(value) { if (!isDate(value)) { value = this.minDate; } value = Math.max(value, this.minDate.getTime()); value = Math.min(value, this.maxDate.getTime()); return new Date(value); }, getBoundary: function getBoundary(type, value) { var _ref; var boundary = this[type + "Date"]; var year = boundary.getFullYear(); var month = 1; var date = 1; var hour = 0; var minute = 0; if (type === 'max') { month = 12; date = getMonthEndDay(value.getFullYear(), value.getMonth() + 1); hour = 23; minute = 59; } if (value.getFullYear() === year) { month = boundary.getMonth() + 1; if (value.getMonth() + 1 === month) { date = boundary.getDate(); if (value.getDate() === date) { hour = boundary.getHours(); if (value.getHours() === hour) { minute = boundary.getMinutes(); } } } } return _ref = {}, _ref[type + "Year"] = year, _ref[type + "Month"] = month, _ref[type + "Date"] = date, _ref[type + "Hour"] = hour, _ref[type + "Minute"] = minute, _ref; }, updateInnerValue: function updateInnerValue() { var _this = this; var type = this.type; var indexes = this.getPicker().getIndexes(); var getValue = function getValue(type) { var index = 0; _this.originColumns.forEach(function (column, columnIndex) { if (type === column.type) { index = columnIndex; } }); var values = _this.originColumns[index].values; return getTrueValue(values[indexes[index]]); }; var year; var month; var day; if (type === 'month-day') { year = this.innerValue.getFullYear(); month = getValue('month'); day = getValue('day'); } else { //修訂這裡 year = getValue('year'); // month = getValue('month'); month = type === 'year' ? 1 : getValue('month'); day = type === 'year' ? 1 : getValue('day'); } var maxDay = getMonthEndDay(year, month); day = day > maxDay ? maxDay : day; var hour = 0; var minute = 0; if (type === 'datehour') { hour = getValue('hour'); } if (type === 'datetime') { hour = getValue('hour'); minute = getValue('minute'); } var value = new Date(year, month - 1, day, hour, minute); this.innerValue = this.formatValue(value); }, onChange: function onChange(picker) { var _this2 = this; this.updateInnerValue(); this.$nextTick(function () { _this2.$nextTick(function () { _this2.$emit('change', picker); }); }); }, updateColumnValue: function updateColumnValue() { var _this3 = this; var value = this.innerValue; var formatter = this.formatter; var values = this.originColumns.map(function (column) { switch (column.type) { case 'year': return formatter('year', "" + value.getFullYear()); case 'month': return formatter('month', padZero(value.getMonth() + 1)); case 'day': return formatter('day', padZero(value.getDate())); case 'hour': return formatter('hour', padZero(value.getHours())); case 'minute': return formatter('minute', padZero(value.getMinutes())); default: // no default return null; } }); this.$nextTick(function () { _this3.getPicker().setValues(values); }); } } });
以上就是直播軟體app開發,vant 時間選擇控制元件修訂為只顯示年份, 更多內容歡迎關注之後的文章
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978258/viewspace-2928240/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 直播app開發,點選螢幕時顯示進度條APP
- EasyUI選擇日期只顯示年月UI
- 直播軟體app開發,產品頁面顯示折扣倒數計時一欄APP
- 直播平臺軟體開發,Android 10 拍照和相簿選擇Android
- bootstrap日期控制元件 只顯示 年月boot控制元件
- 直播軟體app開發,js隨機生成字母和獲取到當前日期、時間APPJS隨機
- 開發直播app 軟體時iOS端廣告功能設定APPiOS
- 直播平臺軟體開發,登陸時獲取當前時間
- 區塊鏈社交直播軟體開發app,即時通訊系統開發區塊鏈APP
- 短視訊軟體開發,日期時間控制元件的應用控制元件
- 直播平臺軟體開發,uni-app實現選項卡功能APP
- 直播帶貨原始碼,日期時間選擇器 選擇範圍限制原始碼
- antdv 時間元件(RangePicker) 分鐘只顯示 00 和30元件
- 直播電商軟體開發,介面懸浮購物車顯示隱藏
- 直播平臺軟體開發,判斷當前時間是否在規定時間內
- Qt:通過QLabel控制元件來顯示實時日期時間QT控制元件
- 如何選擇小程式軟體開發公司
- 直播軟體搭建,LabelList標籤選擇器
- 線上教你開發直播軟體app時需要掌握的小知識APP
- element 時間選擇器禁止選擇以前的時間
- 直播app開發搭建,計算影片上傳所需時間APP
- 直播類app開發解決方案、直播app功能有哪些?-北京銳智互動軟體開發APP
- Flutter 日期時間選擇類控制元件及國際化Flutter控制元件
- 直播軟體app開發,vue記住密碼功能APPVue密碼
- QT時鐘控制元件顯示QT控制元件
- 短視訊軟體開發,按鈕側滑顯示各個選項
- 夢幻賽事比分軟體開發/體育直播賽事app技術開發/足球即時比分APP
- 選擇軟體開發平臺,“快速開發”是關鍵
- win10時間不顯示日期怎麼辦_win10電腦只顯示時間沒有日期如何處理Win10
- win10系統開機鎖屏介面只顯示一張圖片不顯示日期時間如何解決Win10
- 區塊鏈社交直播軟體開發app,IM聊天系統開發區塊鏈APP
- 直播軟體開發,ScheduledExecutorService定時器的使用定時器
- 直播軟體app開發,刪除主頁搜尋框APP
- 智慧金融軟體開發前景,怎麼選擇公司
- element-ui 時間選擇器設定時間選擇範圍UI
- 直播系統程式碼,選擇分類時,顯示更多下拉框效果的內容
- APP定製開發時間APP
- 社交app開發功能,社交軟體開發功能,社交app,社交軟體。APP