CardParser.ets 2.09 KB
import { CommonConstants, CompStyle } from 'wdConstant';
import { ContentDTO } from 'wdBean';
import { Card2Component } from './cardview/Card2Component';
import { Card3Component } from './cardview/Card3Component';
import { Card4Component } from './cardview/Card4Component';
import { Card5Component } from './cardview/Card5Component';
import { Card6Component } from './cardview/Card6Component';
import { Card9Component } from './cardview/Card9Component';
import { Card10Component } from './cardview/Card10Component';
import { Card11Component } from './cardview/Card11Component';
import { Card17Component } from './cardview/Card17Component';

/**
 * card适配器,卡片样式汇总,依据ContentDTO#appStyle
 * 卡片样式,最小单元样式布局
 */
@Component
export struct CardParser {
  @State contentDTO: ContentDTO = {} as ContentDTO;

  build() {
    this.contentBuilder(this.contentDTO);
  }

  @Builder
  contentBuilder(contentDTO: ContentDTO) {
    if (contentDTO.appStyle === CompStyle.Card_02) {
      Card2Component({ contentDTO })
    } else if (contentDTO.appStyle === CompStyle.Card_03) {
      Card3Component({ contentDTO })
    } else if (contentDTO.appStyle === CompStyle.Card_04) {
      Card4Component({ contentDTO })
    } else if (contentDTO.appStyle === CompStyle.Card_05) {
      Card5Component({ contentDTO })
    } else if (contentDTO.appStyle === CompStyle.Card_06 || contentDTO.appStyle === CompStyle
      .Card_13) {
      Card6Component({ contentDTO })
    } else if (contentDTO.appStyle === CompStyle.Card_09) {
      Card9Component({ contentDTO })
    } else if (contentDTO.appStyle === CompStyle.Card_10) {
      Card10Component({ contentDTO })
    } else if (contentDTO.appStyle === CompStyle.Card_11) {
      Card11Component({ contentDTO })
    } else if (contentDTO.appStyle === CompStyle.Card_17) {
      Card17Component({ contentDTO })
    }
    else {
      // todo:组件未实现 / Component Not Implemented
      Text(contentDTO.appStyle)
        .width(CommonConstants.FULL_PARENT)
        .padding(10)
      // .backgroundColor(Color.Brown) // 展示本页未实现的compStyle
    }
  }
}