鸿蒙NEXT开发实用技巧:通用工具类

今天分享一个幽蓝君自己在开发中的小技巧,就是封装一个通用工具类,之前大家如果下载过幽蓝君的代码可能也会发现这个东西。比如我们在开发中有一些比较常用的颜色、尺寸或者方法,都可以用一个类封装起来,这样不仅使用方便,统一修改也更加方便。 首先,创建一个和pages同级别的文件夹,在文件夹下创建一个新文件BasicConstant.ets,注意是ets文件,然后在这个文件里创建一个类,并简单定义一个颜色: export class BasicConstant { static readonly TEXT_COLOR = 'rgb(74,74,74,)' } 这样你就可以在项目的任何一个地方使用这个颜色: Text('这是一个示例') .fontColor(BasicConstant.TEXT_COLOR) .fontSize(18) 不但如此,在其他项目中,你也可以把这个文件直接拖过去使用。 所以接下来我们再把这个类丰富一下,比如常用的字体大小: static readonly TEXT_SIZE = 14 常用的背景色: static readonly BACK_GRAY_COLOR = 'rgb(239,239,247)' 屏幕的尺寸: static readonly SCREEN_WIDTH = px2vp(display.getDefaultDisplaySync().width) static readonly SCREEN_HEIGHT = px2vp(display.getDefaultDisplaySync().height) 除了常量之外,还可以定义方法,比如时间字符串前面补0的方法: static addZero(num:number){ return num > 9 ? num.toString():'0'+num.toString() } 比较时间大小的方法: compareDate(date: string) { let cDate1 = new Date(date) let time1 = cDate1.getTime() let chooseDate2: string = this.dateToday.getFullYear() + '-' + BasicConstant.addZero(this.dateToday.getMonth() + 1) + '-' + BasicConstant.addZero(this.dateToday.getDate()) let cDate2 = new Date(chooseDate2) let time2 = cDate2.getTime() return time1 >= time2 } 其他的常用方法大家可以根据自己的需要进行补充,是不是很方便。

Mar 23, 2025 - 14:10
 0
鸿蒙NEXT开发实用技巧:通用工具类

今天分享一个幽蓝君自己在开发中的小技巧,就是封装一个通用工具类,之前大家如果下载过幽蓝君的代码可能也会发现这个东西。比如我们在开发中有一些比较常用的颜色、尺寸或者方法,都可以用一个类封装起来,这样不仅使用方便,统一修改也更加方便。

首先,创建一个和pages同级别的文件夹,在文件夹下创建一个新文件BasicConstant.ets,注意是ets文件,然后在这个文件里创建一个类,并简单定义一个颜色:

export class BasicConstant {

  static readonly TEXT_COLOR = 'rgb(74,74,74,)'

}

这样你就可以在项目的任何一个地方使用这个颜色:

Text('这是一个示例')
    .fontColor(BasicConstant.TEXT_COLOR)
    .fontSize(18)

不但如此,在其他项目中,你也可以把这个文件直接拖过去使用。

所以接下来我们再把这个类丰富一下,比如常用的字体大小:

static readonly TEXT_SIZE = 14

常用的背景色:

static readonly BACK_GRAY_COLOR = 'rgb(239,239,247)'

屏幕的尺寸:

static readonly SCREEN_WIDTH = px2vp(display.getDefaultDisplaySync().width)

static readonly SCREEN_HEIGHT = px2vp(display.getDefaultDisplaySync().height)

除了常量之外,还可以定义方法,比如时间字符串前面补0的方法:

static addZero(num:number){

 return num > 9 ? num.toString():'0'+num.toString()

}

比较时间大小的方法:

compareDate(date: string) {
    let cDate1 = new Date(date)
    let time1 = cDate1.getTime()

    let chooseDate2: string =
      this.dateToday.getFullYear() + '-' + BasicConstant.addZero(this.dateToday.getMonth() + 1) + '-' +
      BasicConstant.addZero(this.dateToday.getDate())

    let cDate2 = new Date(chooseDate2)
    let time2 = cDate2.getTime()
    return time1 >= time2
  }

其他的常用方法大家可以根据自己的需要进行补充,是不是很方便。