SettingPage.ets 1.43 KB
import ArrayList from '@ohos.util.ArrayList'
import { MineSettingComponent } from '../setting/MineSettingComponent';
import { AccountAndSecurityLayout } from '../setting/AccountAndSecurityLayout';
import router from '@ohos.router';
import { Action, Params } from 'wdBean';
import { DateTimeUtils } from 'wdKit/Index';
import { TrackingPageBrowse, TrackConstants } from 'wdTracking/Index';

@Entry
@Component
struct SettingPage {
  @State message: string = 'Hello World 02'
  @State pageType: string = 'mainSetting';
  @State params:Params =  router.getParams() as Params;
  @State enterActivityTime:number = 0;
  pageShowTime:number = 0;
  pageHideTime:number = 0;

  onPageShow() {
    this.pageShowTime = DateTimeUtils.getTimeStamp()
    this.pageType = this.params.pageID;
    this.enterActivityTime = DateTimeUtils.getTimeStamp()
  }

  onPageHide(): void {
    this.pageHideTime = DateTimeUtils.getTimeStamp()
    let duration = 0
    duration = Math.floor((this.pageHideTime - this.pageShowTime)/1000)
    TrackingPageBrowse.trackCommonPageExposureEnd(TrackConstants.PageName.Setting,TrackConstants.PageName.Setting,duration)
  }

  build() {
    Column() {
      if (this.pageType == 'mainSetting') {
        MineSettingComponent()
      } else  {
        AccountAndSecurityLayout({enterActivityTime:this.enterActivityTime})
      }
    }.setFullWidth()
  }

  // 私有方法
  @Styles setFullWidth(){
    .width('100%')
  }
}

export { SettingPage };

/*

* */