提交 2379a36b 编写于 作者: Y yamila 提交者: 田雨
上级 1b983312
......@@ -21,14 +21,14 @@
```ts
@Builder myBuilderFunction({ ... })
@Builder MyBuilderFunction({ ... })
```
使用方法:
```ts
this.myBuilderFunction({ ... })
this.MyBuilderFunction({ ... })
```
- 允许在自定义组件内定义一个或多个自定义构建函数,该函数被认为是该组件的私有、特殊类型的成员函数。
......
......@@ -427,6 +427,8 @@ try {
}
```
详细示例请参考:[UI开发-页面路由](../../ui/arkts-routing.md#命名路由)
## router.pushNamedRoute<sup>10+</sup>
pushNamedRoute(options: NamedRouterOptions, callback: AsyncCallback&lt;void&gt;): void
......
......@@ -24,8 +24,8 @@ ImageBitmap(src: string)
| 属性 | 类型 | 描述 |
| -------- | -------- | -------- |
| width | number | ImageBitmap的像素宽度。<br/>从API version 9开始,该接口支持在ArkTS卡片中使用。 |
| height | number | ImageBitmap的像素高度。<br/>从API version 9开始,该接口支持在ArkTS卡片中使用。 |
| width | number | ImageBitmap的像素宽度,当前值为0。<br/>从API version 9开始,该接口支持在ArkTS卡片中使用。 |
| height | number | ImageBitmap的像素高度,当前值为0。<br/>从API version 9开始,该接口支持在ArkTS卡片中使用。 |
**示例:**
......
......@@ -323,3 +323,64 @@ function onBackClick() {
```
当用户点击“返回”按钮时,会弹出自定义的询问框,询问用户是否确认返回。选择“取消”将停留在当前页目标页面;选择“确认”将触发router.back()方法,并根据参数决定如何执行跳转。
## 命名路由
在开发中为了跳转到[共享包中的页面](../quick-start/shared-guide.md)(即共享包中路由跳转),可以使用[router.pushNamedRoute()](../reference/apis/js-apis-router.md#routerpushnamedroute)来实现。
在使用页面路由Router相关功能之前,需要在代码中先导入Router模块。
```ts
import router from '@ohos.router';
```
在想要跳转到的[共享包](../quick-start/shared-guide.md)页面里,给[@Entry修饰的自定义组件](../quick-start/arkts-create-custom-components.md#entryoptions10)命名:
```ts
// library/src/main/ets/pages/Index.ets
@Entry({ routeName : 'myPage' })
@Component
struct MyComponent {
}
```
配置成功后需要在需要跳转的页面中引入命名路由的页面:
```ts
// entry/src/main/ets/pages/Index.ets
import router from '@ohos.router';
import '@ohos/library/src/main/ets/Index.ets' // 引入共享包library中的命名路由页面
@Entry
@Component
struct Index {
build() {
Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
Text('Hello World')
.fontSize(50)
.fontWeight(FontWeight.Bold)
.margin({ top: 20 })
.backgroundColor('#ccc')
.onClick(() => { // 点击跳转到其他共享包中的页面
try {
router.pushNamedRoute({
name: 'myPage',
params: {
data1: 'message',
data2: {
data3: [123, 456, 789]
}
}
})
} catch (err) {
console.error(`pushNamedRoute failed, code is ${err.code}, message is ${err.message}`);
}
})
}
.width('100%')
.height('100%')
}
}
```
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册