1# @ohos.app.form.formBindingData (卡片数据绑定类)
2
3卡片数据绑定模块提供卡片数据绑定的能力。包括FormBindingData对象的创建、相关信息的描述。
4
5> **说明:**
6>
7> 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8
9## 导入模块
10
11```ts
12import { formBindingData } from '@kit.FormKit';
13```
14
15
16## ProxyData<sup>10+</sup>
17
18卡片代理刷新订阅数据信息。
19
20**模型约束:** 此接口仅可在Stage模型下使用。
21
22**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
23
24**系统能力:** SystemCapability.Ability.Form
25
26| 名称 | 类型 | 必填 | 说明 |
27| -------- | -------- | -------- | -------- |
28| key<sup>10+</sup> | string | 是 | 卡片代理刷新的订阅标识,与数据发布者保持一致。|
29| subscriberId<sup>10+</sup> | string | 否 | 卡片代理刷新的订阅条件,默认值为当前卡片的formId。|
30
31
32## FormBindingData
33
34FormBindingData相关描述。
35
36**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
37
38**系统能力:** SystemCapability.Ability.Form
39
40| 名称 | 类型 | 必填 | 说明 |
41| -------- | -------- | -------- | -------- |
42| data | Object | 是 | 卡片要展示的数据。可以是包含若干键值对的Object或者 json 格式的字符串。|
43| proxies<sup>10+</sup> | Array<[ProxyData](#proxydata10)> | 否 | 卡片代理刷新的订阅信息,默认为空数组。<br>**模型约束:** 此接口仅可在Stage模型下使用。<br>|
44
45## createFormBindingData
46
47createFormBindingData(obj?: Object | string): FormBindingData
48
49创建一个FormBindingData对象。
50
51**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
52
53**系统能力:** SystemCapability.Ability.Form
54
55**参数:**
56
57| 参数名 | 类型           | 必填 | 说明                                                         |
58| ------ | -------------- | ---- | ------------------------------------------------------------ |
59| obj    | Object\|string | 否   | 卡片要展示的数据。可以是包含若干键值对的Object或者 json 格式的字符串。其中图片数据以'formImages'作为标识,内容为图片标识与图片文件描述符的键值对{'formImages': {'key1': fd1, 'key2': fd2}}。|
60
61
62**返回值:**
63
64| 类型                                | 说明                                    |
65| ----------------------------------- | --------------------------------------- |
66| [FormBindingData](#formbindingdata) | 根据传入数据创建的FormBindingData对象。 |
67
68**错误码:**
69
70| 错误码ID | 错误信息 |
71| -------- | -------- |
72| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed |
73
74以上错误码的详细介绍请参见[卡片错误码](errorcode-form.md)。
75
76
77**示例:**
78
79```ts
80import { formBindingData } from '@kit.FormKit';
81import { BusinessError } from '@kit.BasicServicesKit';
82import { fileIo } from '@kit.CoreFileKit';
83
84try {
85  let file = fileIo.openSync('/path/to/form.png');
86  let formImagesParam: Record<string, number> = {
87    'image': file.fd
88  };
89  let createFormBindingDataParam: Record<string, string | Object> = {
90    'name': '21°',
91    'imgSrc': 'image',
92    'formImages': formImagesParam
93  };
94
95  formBindingData.createFormBindingData(createFormBindingDataParam);
96} catch (error) {
97  let code = (error as BusinessError).code;
98  let message = (error as BusinessError).message;
99  console.error(`catch error, code: ${code}, message: ${message}`);
100}
101```