let listStr = ""
// 创建一个四个空元素的数组
// let arr: string[] = Array(4)
// for (let i = 0; i < arr.length; i++) {
//   arr[i] = listStr[Math.floor(Math.random() * listStr.length)]
// }



@Entry
@Component
struct Day235 {
  @State message: string = '';
  @State str:string = ''
  aboutToAppear(): void {
    listStr = this.genStr(65,90)+this.genStr(97,122)+this.genStr(48,57)
    this.str = this.genCode()
  }
  genStr(start:number,end:number){
    let str = ''
    for (let i = start; i <= end; i++) {
      str+=String.fromCharCode(i)
    }
    return str
  }
  genCode(){
    this.str=''
    for (let i = 0; i < 4; i++) {
      let index = Math.floor(Math.random()*62)
      this.str += listStr[index]
    }
    return this.str
  }


  build() {
    Column() {
      Row(){
        TextInput({ text: $$this.message }).layoutWeight(1)
        Text(this.str.toString()).fontSize(50) 
      }
      Button('验证').onClick(() => {
        if (this.message.toLowerCase() == this.str.toLowerCase()) {
          AlertDialog.show({
            message: 'OK'
          })
        } else {
          AlertDialog.show({
            message: 'Fail'
          })
        }
      })
    }
    .height('100%')
    .width('100%')
  }
}

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐