1# postCardAction 2 3用于卡片内部和提供方应用间的交互,当前支持router、message和call三种类型的事件,仅在卡片中可以调用。 4 5> **说明:** 6> 7> 本接口从API version 9开始支持。 8 9## postCardAction 10 11postCardAction(component: Object, action: Object): void 12 13执行函数内部的交互,处理component和action对象的相关操作,不返回任何内容。 14 15**卡片能力:** 从API version 9开始,该接口支持在ArkTS卡片中使用。 16 17**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 18 19**系统能力:** SystemCapability.ArkUI.ArkUI.Full 20 21**模型约束:**此接口仅可在Stage模型下使用。 22 23**参数:** 24 25 26| **参数名** | **类型** | **必填** | **说明** | 27| -------- | -------- | -------- | -------- | 28| component | Object | 是 | 当前自定义组件的实例,通常传入this。 | 29| action | Object | 是 | action的具体描述,详情见下表。 | 30 31 32action参数说明: 33 34 35| **参数名** | **类型** | **必填** | **取值说明** | 36| -------- | -------- | -------- | -------- | 37| action | string | 是 |action的类型,支持三种预定义的类型:<br/>- router:跳转到提供方应用的指定UIAbility,只允许在点击事件中触发。<br/>- message:自定义消息,触发后会调用提供方FormExtensionAbility的[onFormEvent()](../apis-form-kit/js-apis-app-form-formExtensionAbility.md#formextensionabilityonformevent)生命周期回调。<br/>- call:后台启动提供方应用。触发后会拉起提供方应用的指定UIAbility(仅支持launchType为singleton的[UIAbility](../../application-models/uiability-launch-type.md),即启动模式为单实例的UIAbility),但不会调度到前台。提供方应用需要具备后台运行权限([ohos.permission.KEEP_BACKGROUND_RUNNING](../../security/AccessToken/permissions-for-all.md#ohospermissionkeep_background_running))。 | 38| bundleName | string | 否 | action为router / call 类型时跳转的包名。 | 39| moduleName | string | 否 | action为router / call 类型时跳转的模块名。 | 40| abilityName | string | 否 | action为router / call 类型时跳转的UIAbility名。 | 41| uri<sup>11+</sup> | string | 否 | action为router 类型时跳转的UIAbility的统一资源标识符。uri和abilityName同时存在时,abilityName优先。 | 42| params | Object | 否 | 当前action携带的额外参数,内容使用JSON格式的键值对形式。 | 43 44>**说明:** 45> 46>"action"为"call" 类型时,"params"需填入参数'method',且类型需为string类型,用于触发UIAbility中对应的方法。 47 48**示例:** 49 50<!--code_no_check--> 51 52```ts 53Button('跳转') 54 .width('40%') 55 .height('20%') 56 .onClick(() => { 57 postCardAction(this, { 58 action: 'router', 59 bundleName: 'com.example.myapplication', 60 abilityName: 'EntryAbility', 61 params: { 62 message: 'testForRouter' // 自定义要发送的message 63 } 64 }); 65 }) 66 67Button('拉至后台') 68 .width('40%') 69 .height('20%') 70 .onClick(() => { 71 postCardAction(this, { 72 action: 'call', 73 bundleName: 'com.example.myapplication', 74 abilityName: 'EntryAbility', 75 params: { 76 method: 'fun', // 自定义调用的方法名,必填 77 message: 'testForCall' // 自定义要发送的message 78 } 79 }); 80 }) 81 82Button('URI跳转') 83 .width('40%') 84 .height('20%') 85 .onClick(() => { 86 postCardAction(this, { 87 action: 'router', 88 uri: 'example://uri.ohos.com/link_page', 89 params: { 90 message: 'router msg for dynamic uri deeplink' // 自定义要发送的message 91 } 92 }); 93 }) 94 95``` 96 97**待跳转应用 [module.json5](../../quick-start/module-configuration-file.md#skills标签) uris 配置示例:** 98 99```json 100"abilities": [ 101 { 102 "skills": [ 103 { 104 "uris": [ 105 { 106 "scheme": "example", 107 "host": "uri.ohos.com", 108 "path": "link_page" 109 } 110 ] 111 } 112 ] 113 } 114] 115``` 116