第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

《仿盒馬》app開(kāi)發(fā)技術(shù)分享-- 我的積分頁(yè)(63)

標(biāo)簽:
鴻蒙 HarmonyOS

## 技术栈

Appgallery connect

开发准备

上一节我们实现了个人中心页面的业务逻辑优化,成功的在用户登陆退出状态下展示对应的组件内容,这一节我们来实现app中另外一个比较重要的模块—积分模块。

功能分析

因为我们的回收订单是跟回收金积分是绑定的,我们在完成回收订单时把对应的金额跟积分已经添加到了用户的个人信息表中,这里我们能够取出总的积分金额。积分的其他信息我们也可以通过回收单相关的页面进行操作

代码实现

首先我们创建积分页,为了样式的统一我们的积分页跟回收金的布局不要相差太多,这样方便用户去进行操作和查看

 build() {
    Column() {
      CommonTopBar({ title: "我的积分", alpha: 0, titleAlignment: TextAlign.Center ,backButton:true})
      Row(){
        Text()
          .fontSize(30)
          .fontColor("#333333")
          .fontWeight(FontWeight.Bold)
      }
    }
    .height('100%')
    .width('100%')
  }
}

我们首先添加了对应的toolbar,和一个text组件这个组件用来接收数据库中查询出来的积分值

我们先定义接收查询数据的对象和变量

 @State isClose:boolean=false
  @State user: User|null=null;
  @State userInfo:UserInfo|null=null;
  @State points:number=0

然后我们在生命周期中根据用户数据查询对应的用户信息,并且赋值给我们定义的对象和变量

  async aboutToAppear(): Promise<void> {
      const value = await StorageUtils.getAll('user');
      if (value != "") {
        this.user = JSON.parse(value)
        if (this.user != null) {
          let databaseZone = cloudDatabase.zone('default');
          let condition = new cloudDatabase.DatabaseQuery(user_info);
          condition.equalTo("user_id", this.user?.user_id)
          let listData = await databaseZone.query(condition);
          let json = JSON.stringify(listData)
          let data: UserInfo[] = JSON.parse(json)
          this.userInfo = data[0]
          this.points=data[0].points
          hilog.error(0x0000, 'testTag', `Failed to query data, code: ${data}`);
        }
      }

  }

接下来我们在页面上展示对应的值,并且同样添加隐藏和显示的按钮

  Row(){
        Text(this.isClose?"$****":"$"+this.points.toString())
          .fontSize(30)
          .fontColor("#333333")
          .fontWeight(FontWeight.Bold)
        Image(this.isClose?$r('app.media.ic_psd_hide'):$r('app.media.ic_psd_show'))
          .width(28)
          .height(28)
          .objectFit(ImageFit.Contain)
          .interpolation(ImageInterpolation.High)
          .margin({left:12})
          .onClick(()=>{
            if (this.isClose==false) {
              this.isClose=true
            }else {
              this.isClose=false
            }

          })
      }

然后我们把个人中心页面的积分页入口添加上跳转的事件

 .onClick(()=>{
                router.pushUrl({url:'pages/recycle/points/PointsPage'})
              })

写在最后的话:
最近harmonyOs已经更新到了6.0bate,api也已经到了20 bate 了,很多老的方法都弃用了,后期我们也会逐渐的更新一下

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫(xiě)下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶(hù)
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專(zhuān)欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消