• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# FormEditExtensionContext
2
3FormEditExtensionContext是[FormEditExtensionAbility](./js-apis-app-form-formEditExtensionAbility.md)的上下文,继承自[UIExtensionContext](../apis-ability-kit/js-apis-inner-application-uiExtensionContext.md)。
4
5> **说明:**
6>
7> 本模块首批接口从API version 18开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8>
9> 本模块接口仅可在Stage模型下使用。
10
11## 导入模块
12```ts
13import { FormEditExtensionAbility } from '@kit.FormKit';
14```
15## FormEditExtensionContext
16FormEditExtensionContext提供允许访问特定于FormEditExtensionAbility资源的能力。
17
18### startSecondPage
19
20startSecondPage(want: Want): Promise<[AbilityResult](../apis-ability-kit/js-apis-inner-ability-abilityResult.md)>
21
22拉起需要被编辑的卡片提供方页面。
23
24**模型约束:** 此接口仅可在Stage模型下使用。
25
26**系统能力:** SystemCapability.Ability.Form
27
28**参数:**
29
30  | 参数名 | 类型    | 必填 | 说明                                   |
31  | ------ | ------ | ---- | ------------------------------------- |
32  | want  |  [Want](../apis-ability-kit/js-apis-app-ability-want.md)  | 是   | 第三方应用需要被桌面拉起的编辑页面信息。|
33
34**返回值:**
35  | 类型 | 说明    |
36  | ------ | ------ |
37  | Promise<[AbilityResult](../apis-ability-kit/js-apis-inner-ability-abilityResult.md)>  |  Promise对象,返回AbilityResult。  |
38
39**错误码:**
40
41以下错误码的详细介绍请参见[卡片错误码](errorcode-form.md)和[通用错误码](../errorcode-universal.md)。
42
43| 错误码ID | 错误信息                                                     |
44| -------- | ------------------------------------------------------------ |
45| 202      | The application is not a system application.                 |
46| 16500050 | An IPC connection error happened.                            |
47| 16501000 | An internal functional error occurred.                       |
48| 16500100 | Failed to obtain the configuration information.                        |
49
50**示例:**
51
52```ts
53import { FormEditExtensionAbility } from '@kit.FormKit'
54import { Want,UIExtensionContentSession } from '@kit.AbilityKit';
55
56const TAG: string = '[testTag] ExampleFormEditExtensionAbility'
57export default class ExampleFormEditAbility extends FormEditExtensionAbility {
58  abilityName: string = 'FormEditSecPageAbility'
59  onSessionCreate(want: Want, session: UIExtensionContentSession) {
60    try {
61      this.context.startSecondPage({
62        bundleName: 'com.example.formEditDemo',
63        parameters: {
64          "secPageAbilityName": this.abilityName
65        }
66
67      }).then(data => {
68        console.log(TAG, `startSecondPage result want: ${JSON.stringify(data)}`)
69      });
70    } catch (e) {
71      console.error(TAG, `startSecondPage failed:${e}`)
72      return
73    }
74  }
75}
76
77```