当前位置: 首页 > news >正文

网站升级 云南省建设注册考试中心南昌室内设计学校

网站升级 云南省建设注册考试中心,南昌室内设计学校,福建工程建设网站,东莞信科网站建设前言 在前面我们介绍过Builder装饰器和BuilderParam装饰器。今天我们继续介绍另外一个装饰器——Styles装饰器:定义组件重用样式。 如果每个组件的样式都需要单独设置,在开发过程中会出现大量代码在进行重复样式设置,虽然可以复制粘贴&…

前言

在前面我们介绍过@Builder装饰器和@BuilderParam装饰器。今天我们继续介绍另外一个装饰器——@Styles装饰器:定义组件重用样式。

如果每个组件的样式都需要单独设置,在开发过程中会出现大量代码在进行重复样式设置,虽然可以复制粘贴,但为了代码简洁性和后续方便维护,我们推出了可以提炼公共样式进行复用的装饰器@Styles。

@Styles装饰器可以将多条样式设置提炼成一个方法,直接在组件声明的位置调用。通过@Styles装饰器可以快速定义并复用自定义样式。用于快速定义并复用自定义样式。

注意⚠️:从API version 9开始,该装饰器支持在ArkTS卡片中使用。

@Styles装饰器使用说明

  1. 当前@Styles仅支持通用属性和通用事件。
  2. @Styles方法不支持参数,反例如下。
// 反例: @Styles不支持参数
@Styles function globalFancy (value: number) {.width(value)
}
  1. @Styles可以定义在组件内或全局,在全局定义时需在方法名前面添加function关键字,组件内定义时则不需要添加function关键字。
// 全局
@Styles function functionName() { ... }// 在组件内
@Component
struct FancyUse {@Styles fancy() {.height(100)}
}
  1. 定义在组件内的@Styles可以通过this访问组件的常量和状态变量,并可以在@Styles里通过事件来改变状态变量的值,示例如下:
@Component
struct FancyUse {@State heightValue: number = 100@Styles fancy() {.height(this.heightValue).backgroundColor(Color.Yellow).onClick(() => {this.heightValue = 200})}
}
  1. 组件内@Styles的优先级高于全局@Styles。
    框架优先找当前组件内的@Styles,如果找不到,则会全局查找。

@Styles装饰器的使用场景

以下示例中演示了组件内@Styles和全局@Styles的用法。

// 定义在全局的@Styles封装的样式
@Styles function globalFancy  () {.width(150).height(100).backgroundColor(Color.Pink)
}@Entry
@Component
struct FancyUse {@State heightValue: number = 100// 定义在组件内的@Styles封装的样式@Styles fancy() {.width(200).height(this.heightValue).backgroundColor(Color.Yellow).onClick(() => {this.heightValue = 200})}build() {Column({ space: 10 }) {// 使用全局的@Styles封装的样式Text('FancyA').globalFancy ().fontSize(30)// 使用组件内的@Styles封装的样式Text('FancyB').fancy().fontSize(30)}}
}

总结

  1. @Styles装饰器可以将多条样式设置提炼成一个方法,直接在组件声明的位置调用。通过@Styles装饰器可以快速定义并复用自定义样式。用于快速定义并复用自定义样式,从而提升代码质量
  2. @Styles方法不支持参数
  3. @Styles可以定义在组件内或全局,在全局定义时需在方法名前面添加function关键字,组件内定义时则不需要添加function关键字。
  4. 定义在组件内的@Styles可以通过this访问组件的常量和状态变量,并可以在@Styles里通过事件来改变状态变量的值。
  5. 组件内@Styles的优先级高于全局@Styles。
    框架优先找当前组件内的@Styles,如果找不到,则会全局查找。
http://www.yayakq.cn/news/996064/

相关文章:

  • 北京网站推广外包济南模板建站多少钱
  • 简约的网站建设石家庄新闻综合频道在线直播观看
  • 建设公司网站要注意哪些沈阳市建设工程项目管理中心
  • 三 网站开发使用软件环境asp.net网站sql权限设置
  • 网站开发 教材沈阳网页排名优化方法
  • 兼职python做网站网站制作的要求
  • 免费网站建设程序图文广告设计学徒一般要学多久
  • 东莞网站建站模板免费网站代码
  • 成都外贸建站怎么做阿里巴巴外贸网站
  • 山西太原建站怎么做wordpress 模板 淘宝客
  • 湖南网站seo营销多少费用网站建设与管理教学视频下载
  • wordpress聚合广告平台如何优化网站到首页优化
  • 酒泉网站建设有哪些做汽车英文网站
  • 怎么做网站策划的模板做一个免费网站的流程
  • 云南高端建设网站建设行业网站
  • 浙江省互联网建设网站wordpress修改默认头像
  • 站外推广内容策划个人网站建设 免费下载
  • 房地产管理网站平面设计自学网站有哪些
  • 网站让百度收录网站开发工资咋样
  • 做的比较好的美食网站有哪些价格低的车
  • 个人网页设计作品欣赏图片企业网站关键词应如何优化
  • 外贸网站外链北京市工程建设信息网
  • 炫酷网站设计温州建校特种作业人员查询
  • 国内做设计的网站网站登录和权限怎么做
  • 网站后台程序成都网站建设公司思乐科技
  • 做一个招聘网站需要多少钱益阳房产网站建设
  • 做钢管用哪个门户网站wordpress 学习插件
  • 苏州网站制作计划中国苏州网
  • 建设网站多钱济南君哲网站建设公司
  • 塑胶制品塘厦东莞网站建设网站上传系统