Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
e6a42258
D
Docs
项目概览
OpenHarmony
/
Docs
大约 1 年 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
e6a42258
编写于
2月 25, 2022
作者:
O
openharmony_ci
提交者:
Gitee
2月 25, 2022
浏览文件
操作
浏览文件
下载
差异文件
!1385 update docs for @Styles and $$
Merge pull request !1385 from houhaoyu/newMaster
上级
69c02c65
b7b9abb6
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
104 addition
and
0 deletion
+104
-0
zh-cn/application-dev/ui/Readme-CN.md
zh-cn/application-dev/ui/Readme-CN.md
+1
-0
zh-cn/application-dev/ui/ts-component-based-styles.md
zh-cn/application-dev/ui/ts-component-based-styles.md
+72
-0
zh-cn/application-dev/ui/ts-syntactic-sugar.md
zh-cn/application-dev/ui/ts-syntactic-sugar.md
+31
-0
未找到文件。
zh-cn/application-dev/ui/Readme-CN.md
浏览文件 @
e6a42258
...
...
@@ -76,6 +76,7 @@
-
[
@Builder
](
ts-component-based-builder.md
)
-
[
@Extend
](
ts-component-based-extend.md
)
-
[
@CustomDialog
](
ts-component-based-customdialog.md
)
-
[
@Styles
](
ts-component-based-styles.md
)
-
UI状态管理
-
[
基本概念
](
ts-ui-state-mgmt-concepts.md
)
-
管理组件拥有的状态
...
...
zh-cn/application-dev/ui/ts-component-based-styles.md
0 → 100644
浏览文件 @
e6a42258
# @Styles
@Styles装饰器将新的属性函数添加到基本组件上,如
**Text**
、
**Column**
、
**Button**
等。当前@Styles仅支持
[
通用属性
](
../reference/arkui-ts/ts-universal-attributes.md
)
。通过@Styles装饰器可以快速定义并复用组件的自定义样式。
@Styles可以定义在组件内或组件外,在组件外定义时需带上function关键字,组件内定义时不需要。
```
@Styles function globalFancy() {
.backgroundColor(Color.Red)
}
@Entry
@Component
struct FancyUse {
@Styles componentFancy() {
.backgroundColor(Color.Blue)
}
build() {
Column({ space: 10 }) {
Text("Fancy")
.globalFancy()
.width(100)
.height(100)
.fontSize(30)
Text("Fancy")
.componentFancy()
.width(100)
.height(100)
.fontSize(30)
}
}
}
```
@Styles还可以在
[
StateStyles
](
../reference/arkui-ts/ts-universal-attributes-polymorphic-style.md
)
属性内部使用,在组件处于不同的状态时赋予相应的属性。
在StateStyles内可以直接调用组件外定义的Styles,但需要通过this关键字调用组件内定义的Styles。
```
@Styles function globalFancy() {
.width(100)
.height(100)
}
@Entry
@Component
struct FancyUse {
@Styles function componentFancy() {
.width(50)
.height(50)
}
build() {
Row({ space: 10 }) {
Button() {
Text("Fancy")
}
.stateStyles({
normal: {
.width(80)
.height(80)
},
disabled: this.componentFancy,
pressed: globalFancy
})
}
}
}
```
zh-cn/application-dev/ui/ts-syntactic-sugar.md
浏览文件 @
e6a42258
...
...
@@ -135,3 +135,34 @@ build() {
Text(this.calcTextValue()) // this function call is ok.
}
```
## $$
$$支持变量双向绑定,支持简单变量、@State、@Link、@Prop等类型。
当前$$仅支持
[
bindPopup
](
../reference/arkui-ts/ts-universal-attributes-popup.md
)
属性的show参数和@State变量之间的渲染,以及Radio组件的checked属性。
```
@Entry
@Component
struct bindPopup {
@State customPopup: boolean = false
build() {
Column() {
Button(){
Text('Popup')
}
.onClick(()=>{
this.customPopup = !this.customPopup
})
.bindPopup(
$$this.customPopup, {
message: "showPopup"
}
)
}
}
}
```
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录