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

图片 wordpressseo专员是干嘛的

图片 wordpress,seo专员是干嘛的,有哪些vue做的网站,营销比较成功的品牌文章大纲 引言一、组件内状态装饰器State1、初始化2、使用规则3、变量的传递/访问规则说明4、支持的观察变化的场景5、State 变量的值初始化和更新机制6、State支持联合类型实例 引言 前一篇文章OpenHarmony 入门——ArkUI 自定义组件之间的状态装饰器小结(一&…

文章大纲

  • 引言
  • 一、组件内状态装饰器@State
    • 1、初始化
    • 2、使用规则
    • 3、变量的传递/访问规则说明
    • 4、支持的观察变化的场景
    • 5、@State 变量的值初始化和更新机制
    • 6、State支持联合类型实例

引言

前一篇文章OpenHarmony 入门——ArkUI 自定义组件之间的状态装饰器小结(一)简单复述了下,这一篇就好好学习下装饰器的语法和用法。

一、组件内状态装饰器@State

@State装饰的变量即状态变量,一旦变量拥有了状态属性,就可以触发其直接绑定UI组件的刷新。当状态改变时,UI会发生对应的渲染改变。**@State是最基础的,使变量拥有状态属性的装饰器,它也是大部分状态变量的数据源。**换言之,任一组件内部自己去通过数据驱动自身UI更新的,只需要把常规变量加上@State修饰即可。

1、初始化

@State装饰的变量,与声明式范式中的其他被装饰变量一样,是私有的且只能从组件内部访问,在声明时必须指定其类型和本地初始化,初始化也可选择使用命名参数机制从父组件完成初始化。@State装饰的变量生命周期与其所属自定义组件的生命周期相同。

2、使用规则

在这里插入图片描述

3、变量的传递/访问规则说明

在这里插入图片描述

4、支持的观察变化的场景

并非状态变量的所有更改都会引起UI的刷新,只有可以被框架观察到的修改才会引起UI刷新。以下的修改可被观察到以及观察到变化后触发ArkUI框架刷新UI。

  • 数据类型为boolean、string、number被修饰时可以观察到数值的变化。
  • 数据类型为class或者Object时,可以观察到自身的赋值的变化及其属性赋值的变化,即Object.keys(observedObject)返回的所有属性。
  class ClassA {public value: string;constructor(value: string) {this.value = value;}}class Model {public value: string;public name: ClassA;constructor(value: string, a: ClassA) {this.value = value;this.name = a;}}// State装饰的类型是Model
@State title: Model = new Model('Hello', new ClassA('World'));
// class类型赋值可被观察到
this.title = new Model('Hi', new ClassA('ArkUI'));
// class属性的赋值 可被观察到
this.title.value = 'Hi';// XXXXXX嵌套的属性赋值观察不到XXXXXXX
this.title.name.value = 'ArkUI';
  • 数据类型为array时,可以观察到数组本身的赋值和添加、删除、更新数组的变化
class Model {public value: number;constructor(value: number) {this.value = value;}
}
// 数组类型
@State title: Model[] = [new Model(11), new Model(1)];
// 数组赋值
this.title = [new Model(2)];
// 数组项赋值
this.title[0] = new Model(2);
// 数组项更改
this.title.pop();
// 数组项更改
this.title.push(new Model(12));
// XXXXXXXXX嵌套的属性赋值观察不到
this.title[0].value = 6;
  • 当装饰的变量是Map时,可以观察到Map整体的赋值,同时可通过调用Map的接口set, clear, delete 更新Map的值。详见装饰Map类型变量。

  • 当装饰的变量是Set时,可以观察到Set整体的赋值,同时可通过调用Set的接口add, clear, delete 更新Set的值。详见装饰Set类型变量。

  • 当装饰的对象是Date时,可以观察到Date整体的赋值,同时可通过调用Date的接口setFullYear, setMonth, setDate, setHours, setMinutes, setSeconds, setMilliseconds, setTime, setUTCFullYear, setUTCMonth, setUTCDate, setUTCHours, setUTCMinutes, setUTCSeconds, setUTCMilliseconds 更新Date的属性。

5、@State 变量的值初始化和更新机制

  • 当状态变量被改变时,查询依赖该状态变量的组件;
  • 执行依赖该状态变量的组件的更新方法,组件更新渲染;
  • 和该状态变量不相关的组件或者UI描述不会发生重新渲染,从而实现页面渲染的按需更新。

6、State支持联合类型实例

@State支持联合类型和undefined和null,在下面的示例中,count类型为number | undefined,点击Button改变count的属性或者类型,视图会随之刷新。

@Entry
@Component
struct EntryComponent {build() {Column() {MyComponent()}}
}@Component
struct MyComponent {@State count: number | undefined = 0;build() {Column() {Text(`count(${this.count})`)Button('change').onClick(() => {this.count = undefined;})}}
}

更多例子请参见后续文章。

http://www.khdw.cn/news/65667.html

相关文章:

  • 用dw做网站长沙关键词优化公司电话
  • django 开放api 做网站如何去推广一个app
  • 台州建设局网站企业黑名单百度账号注销
  • 微信小程序开发需要什么seo型网站
  • 网站首页视频背景宁德市教育局官网
  • 西宁商城网站建设公司搜索引擎收录提交入口
  • 大良营销网站建设价位今天的新闻大事10条
  • 天津外贸网站建设如何做线上推广
  • 做网站大流量什么是seo标题优化
  • 做网站怎么提取视频无广告seo入门教程网盘
  • 网站 网址 域名百度一下官方网
  • 网站建设的售后服务郑州建网站的公司
  • 专门做心理测试的网站刷关键词排名seo
  • 网站备案真实核验单网址大全
  • 足球比方类网站开发seo常见优化技术
  • 网站服务器可以做家用电脑莱芜seo
  • 做网站骗老外的钱推广引流方法有哪些?
  • 公司自己做网站多少费用个人网站免费制作平台
  • wordpress主题 vieuseo主管招聘
  • 天津黑臭水体工程中标排名怎么优化快
  • 南通专业制作网站手机优化软件
  • 做网站的虚拟机怎么用链接提交入口
  • 网站建设策划结束语优化设计三年级上册答案
  • ps做网站logo尺寸东莞seo关键词
  • 江苏省住房和城乡建设厅网站首页线上营销推广渠道
  • 在电脑上做网站的软件如何开网店
  • 做网站需要怎么分工小红书笔记关键词排名优化
  • 百色网站免费建设优化大师班级优化大师
  • 做推广哪家网站好互联网营销师培训机构哪家好
  • 携程网站建设进度及实施过程深圳全网营销哪里好