From 756f8a63347119f511fc964bf1e2ff2417339c56 Mon Sep 17 00:00:00 2001 From: Tomas <tomasysh@gmail.com> Date: 星期四, 11 一月 2024 17:16:42 +0800 Subject: [PATCH] update: 改寫 lodash 方法為純 js --- PAMapp/components/phoneContactTimePicker.vue | 23 +++++++++++------------ 1 files changed, 11 insertions(+), 12 deletions(-) diff --git a/PAMapp/components/phoneContactTimePicker.vue b/PAMapp/components/phoneContactTimePicker.vue index 1055196..e297e0b 100644 --- a/PAMapp/components/phoneContactTimePicker.vue +++ b/PAMapp/components/phoneContactTimePicker.vue @@ -74,18 +74,17 @@ import { dayTimeFrames } from "~/shared/const/day-time-frames"; import { OptionBtnDto, OptionDto } from "~/shared/models/optionBtnDto.model"; import { weekDays } from "~/shared/const/week-days"; - import * as _ from "lodash"; @Component({ filters:{ titleFormatByIndex(index:number):string{ const chineseNumber = ['銝�','鈭�','銝�','���','鈭�','�','銝�','�','銋�','���']; return '��挾'+chineseNumber[index]; }, - optionsFormat(selectedOptions:string[]|[], compareOptions:OptionDto): string{ - return _.isEqual(selectedOptions.length,compareOptions.options.length) - ? compareOptions.selectAll - : _.join(selectedOptions,','); - }, + optionsFormat(selectedOptions = [], compareOptions) { + return selectedOptions.length === compareOptions.options.length + ? compareOptions.selectAll + : selectedOptions.join(','); + } } }) export default class PhoneContactTimePicker extends Vue { @@ -110,7 +109,7 @@ ////////////////////////////////////////////////////////////////////// get isOpenByDayPopUp(): boolean{ - return _.isEqual(this.popUpMode , TimePickerMode.SELECT_DAY) + return this.popUpMode === TimePickerMode.SELECT_DAY; } set isOpenByDayPopUp(value:boolean){ @@ -118,7 +117,7 @@ } get isOpenByTimePopUp(): boolean{ - return _.isEqual(this.popUpMode , TimePickerMode.SELECT_TIME); + return this.popUpMode === TimePickerMode.SELECT_TIME; } set isOpenByTimePopUp(value:boolean){ @@ -128,7 +127,7 @@ ////////////////////////////////////////////////////////////////////// openPopUp(schedule:scheduleDto,index:number):void{ - this.initPickerControl = _.cloneDeep(schedule); + this.initPickerControl = JSON.parse(JSON.stringify(schedule)); this.popUpMode = TimePickerMode.SELECT_DAY; this.scheduleIndex = index; } @@ -144,8 +143,8 @@ } private initPickerFormatSort(initPickerControl:scheduleDto):scheduleDto{ - _.keys(initPickerControl).forEach(keyName=>{ - const options = _.isEqual(keyName,'selectWeekOptions') ? weekDays : dayTimeFrames; + Object.keys(initPickerControl).forEach(keyName=>{ + const options = keyName === 'selectWeekOptions' ? weekDays : dayTimeFrames; initPickerControl[keyName] = this.getOptionsBySort(initPickerControl[keyName],options); }) return initPickerControl; @@ -153,7 +152,7 @@ // 鞈�������儔銝��������� private getOptionsBySort( selectedOptions:string[] , options:OptionBtnDto[]): string[] { - return options.map( o => _.includes(selectedOptions , o.label) ? o.label as string : '').filter(String); + return options.map( o => selectedOptions.includes(o.label as string) ? o.label as string : '').filter(String); } addNewSchedule(): void { -- Gitblit v1.8.0