美文网首页
2025-06-29

2025-06-29

作者: 俗人彭jin | 来源:发表于2025-06-28 16:19 被阅读0次

    @Local 描述的才能修改

    @Extend 抽离css

    @otherData 循环数据

    @Builder 自定义函数

    import App from '@system.app';
    
    @Entry
    @ComponentV2
    struct Index {
      @Local message: string = 'Hello222 World';
      //
      private otherData:Array<ResourceStr> = [
        $r('app.media.ic_menu'),
        $r('app.media.ic_menu'),
        $r('app.media.ic_menu'),
      ]
      build() {
       Column(){
         Image($r('app.media.ic_brand'))
           .width('100%')
         Column(){
           this.myInput() // 自定义函数引入
           // TextInput({placeholder:'请输入账号'})
           //   .type(InputType.Normal)
           //   .myInputStyle(5)
           // TextInput({placeholder:'请输入密码'})
           //   .type(InputType.Password)
           //   .placeholderColor(Color.Gray)
           //   .myInputStyle(10)
         }
         Row(){
           Text('短信验证码登录').fontSize('20fp')
           Text('忘记密码').fontSize('20fp')
         }
         .width('100%')
         .justifyContent(FlexAlign.SpaceAround)
         .margin('20vp')
    
         Button('登录')
           .backgroundColor(Color.Orange)
           .padding('15vp')
           .width('90%')
           .margin({bottom:'20vp'})
           .onClick(()=>{
             console.log('ok')
           })
    
       //   第三方登录
         Column(){
           Text('第三方登录')
             .fontSize('20fp')
             .fontColor(Color.Gray)
           Row(){
             // 循环
             ForEach(this.otherData,(item:ResourceStr,index?:number)=>{
               Image(item)
                 .width('50vp')
                 .height('50vp')
             })
             // Image($r('app.media.ic_menu'))
             //   .width('50vp')
             //   .height('50vp')
             // Image($r('app.media.ic_menu'))
             //   .width('50vp')
             //   .height('50vp')
             // Image($r('app.media.ic_menu'))
             //   .width('50vp')
             //   .height('50vp')
           }.width('90%')
           .margin({top:'20vp'})
           .justifyContent(FlexAlign.SpaceEvenly)
         }
       }
      }
      @Builder
      myInput(){
        TextInput({placeholder:'请输入账号'})
          .type(InputType.Normal)
          .myInputStyle(5)
        TextInput({placeholder:'请输入密码'})
          .type(InputType.Password)
          .placeholderColor(Color.Gray)
          .myInputStyle(10)
      }
    }
    
    
    // 自定义构建函数
    
    
    //公共函数库(样式抽离) @Extend
    @Extend(TextInput) function myInputStyle(length?:number){
      .placeholderColor(Color.Gray)
      .margin('10vp')
      .padding('10vp')
      .textIndent('10vp')
      .maxLength(length)
    }
    
    

    相关文章

      网友评论

          本文标题:2025-06-29

          本文链接:https://www.haomeiwen.com/subject/vqgmgjtx.html