【鸿蒙HarmonyOS开发笔记】使用@Preview装饰器预览组件

概述

ArkTS应用/服务支持组件预览,要求compileSdkVersion8或以上。组件预览支持实时预览,不支持动态图和动态预览。组件预览通过在组件前添加注解@Preview实现,在单个源文件中,最多可以使用10@Preview装饰自定义组件。


@Preview的使用参考如下示例

@Preview({
  title: 'FoodImage'
})
@Component
struct FoodImageDisplayPreview {
  build() {
    Flex() {
      FoodImageDisplay({ foodItem: getDefaultFoodData() })
    }
  }
}

以上示例的组件预览效果如下图所示:
在这里插入图片描述


组件预览默认的预览设备为Phone,若您想在不同的设备,或者不同的屏幕形状,或者不同设备语言等情况下的组件预览效果,可以通过设置@Preview的参数,指定预览设备的相关属性。若不设置@Preview的参数,默认的设备属性如下所示:

@Preview({
  title: 'Component1',  //预览组件的名称
  deviceType: 'phone',  //指定当前组件预览渲染的设备类型,默认为Phone
  width: 1080,  //预览设备的宽度,单位:px
  height: 2340,  //预览设备的长度,单位:px
  colorMode: 'light',  //显示的亮/暗模式,取值为light或dark
  dpi: 480,  //预览设备的屏幕DPI值
  locale: 'zh_CN',  //预览设备的语言,如zh_CN、en_US等
  orientation: 'portrait',  //预览设备的横竖屏状态,取值为portrait或landscape
  roundScreen: false  //设备的屏幕形状是否为圆形
})

请注意,如果被预览的组件是依赖参数注入的组件,建议的预览方式是:定义一个组件片段,在该片段中声明将要预览的组件,以及该组件依赖的入参,并在组件片段上标注@Preview注解,以表明将预览该片段中的内容。例如,要预览如下组件:

@Component
struct Title {
  context: string
  build() {
    Text(this.context)
  }
}

建议按如下方式预览:

@Preview
@Component    //定义组件片段TitlePreview
struct TitlePreview {
  build() {
    Title({ context: 'MyTitle' })    //在该片段中声明将要预览的组件Title,以及该组件依赖的入参 {context: ’MyTitle’}
  }
}

最近更新

  1. TCP协议是安全的吗?

    2024-03-27 22:56:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-27 22:56:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-27 22:56:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-27 22:56:02       20 阅读

热门阅读

  1. 嵌入式学习笔记day28

    2024-03-27 22:56:02       15 阅读
  2. esp32c6 micropython固件首发

    2024-03-27 22:56:02       22 阅读
  3. ARM day3

    ARM day3

    2024-03-27 22:56:02      18 阅读
  4. 光敏传感器控制led灯的亮度

    2024-03-27 22:56:02       15 阅读
  5. Linux初学(九)shell 脚本

    2024-03-27 22:56:02       16 阅读
  6. 【晴问算法】入门篇—字符串处理—回文字符串

    2024-03-27 22:56:02       17 阅读
  7. C++中拷贝对象时编译器做出的一些优化

    2024-03-27 22:56:02       18 阅读
  8. glob模块篇

    2024-03-27 22:56:02       18 阅读
  9. 图论—树的直径(树形DP、BFS)

    2024-03-27 22:56:02       17 阅读
  10. 领域特定语言在量化交易中的设计及应用

    2024-03-27 22:56:02       18 阅读
  11. VC++ build Tools下载地址

    2024-03-27 22:56:02       18 阅读
  12. #1. 乘法竖式

    2024-03-27 22:56:02       15 阅读
  13. Python学习之-顺序结构-入求多边形面积

    2024-03-27 22:56:02       13 阅读
  14. 类,并快乐着---python中的类

    2024-03-27 22:56:02       14 阅读