diff --git a/en/application-dev/reference/apis/js-apis-application-Want.md b/en/application-dev/reference/apis/js-apis-application-Want.md
index b7f2605363e849a8d5531b9ebda7d2277a2fd11c..9275473cd14727d8a3e8f16327d2020a1adefb4d 100644
--- a/en/application-dev/reference/apis/js-apis-application-Want.md
+++ b/en/application-dev/reference/apis/js-apis-application-Want.md
@@ -24,9 +24,9 @@ import Want from '@ohos.application.Want';
| uri | Read only | string | No | URI information to match. If **uri** is specified in a **Want** object, the **Want** object will match the specified URI information, including **scheme**, **schemeSpecificPart**, **authority**, and **path**.|
| type | Read only | string | No | MIME type, that is, the type of the file to open, for example, **text/xml** and **image/***. For details about the MIME type definition, see https://www.iana.org/assignments/media-types/media-types.xhtml?utm_source=ld246.com. |
| flags | Read only | number | No | How the **Want** object will be handled. For details, see [flags](js-apis-featureAbility.md#flags).|
-| action | Read only | string | No | Action option. |
-| parameters | Read only | {[key: string]: any} | No | Want parameters in the form of custom key-value (KV) pairs. By default, the following keys are carried:
**ohos.aafwk.callerPid**: PID of the caller.
**ohos.aafwk.param.callerToken**: token of the caller.
**ohos.aafwk.param.callerUid**: UID of the caller. The **userId** parameter in the [Bundle](js-apis-Bundle.md) module can be used to obtain application and bundle information. |
-| entities | Read only | Array\ | No | List of entities. |
+| action | Read only | string | No | Action to take, such as viewing and sharing application details. In implicit **Want**, you can define this field and use it together with **uri** or **parameters** to specify the operation to be performed on the data. |
+| parameters | Read only | {[key: string]: any} | No | Want parameters in the form of custom key-value (KV) pairs. By default, the following keys are carried:
**ohos.aafwk.callerPid**: PID of the caller.
**ohos.aafwk.param.callerToken**: token of the caller.
**ohos.aafwk.param.callerUid**: UID in [bundleInfo](js-apis-bundle-BundleInfo.md#bundleinfo-1), that is, the application UID in the bundle information. |
+| entities | Read only | Array\ | No | Additional category information (such as browser and video player) of the target ability. It is a supplement to **action** in implicit **Want** and is used to filter ability types. |
| moduleName9+ | Read only | string | No | Module to which the ability belongs.|
**Example**
@@ -46,77 +46,89 @@ import Want from '@ohos.application.Want';
})
```
-- Passing a file descriptor (FD)
+- Data is transferred through user-defined fields. The following data types are supported:
- ``` js
- import fileio from '@ohos.fileio';
- var fd;
- try {
- fd = fileio.openSync("/data/storage/el2/base/haps/pic.png");
- } catch(e) {
- console.log("openSync fail:" + JSON.stringify(e));
- }
- var want = {
- "deviceId": "", // An empty deviceId indicates the local device.
- "bundleName": "com.extreme.test",
- "abilityName": "MainAbility",
- "moduleName": "entry", // moduleName is optional.
- "parameters": {
- "keyFd":{"type":"FD", "value":fd}
+ * String
+ ```ts
+ let want = {
+ bundleName: "com.example.demo",
+ abilityName: "com.example.demo.MainAbility",
+ parameters: {
+ keyForString: "str",
+ },
}
- };
- this.context.startAbility(want, (error) => {
- // Start an ability explicitly. The bundleName, abilityName, and moduleName parameters work together to uniquely identify an ability.
- console.log("error.code = " + error.code)
- })
- ```
-
-- Passing **RemoteObject** data
-
- ``` js
- import rpc from '@ohos.rpc';
- import Ability from '@ohos.application.Ability'
-
- class Stub extends rpc.RemoteObject {
- constructor(des) {
- if (typeof des == 'string') {
- super(des);
- } else {
- return null;
- }
+ ```
+ * Number
+ ```ts
+ let want = {
+ bundleName: "com.example.demo",
+ abilityName: "com.example.demo.MainAbility",
+ parameters: {
+ keyForInt: 100,
+ keyForDouble: 99.99,
+ },
}
-
- onRemoteRequest(code, data, reply, option) {
- if (code === 1) {
- console.log('onRemoteRequest called')
- let token = data.readInterfaceToken();
- let num = data.readInt();
- this.method();
- return true;
- }
- return false;
+ ```
+ * Boolean
+ ```ts
+ let want = {
+ bundleName: "com.example.demo",
+ abilityName: "com.example.demo.MainAbility",
+ parameters: {
+ keyForBool: true,
+ },
}
-
- method() {
- console.log('method called');
+ ```
+ * Object
+ ```ts
+ let want = {
+ bundleName: "com.example.demo",
+ abilityName: "com.example.demo.MainAbility",
+ parameters: {
+ keyForObject: {
+ keyForObjectString: "str",
+ keyForObjectInt: -200,
+ keyForObjectDouble: 35.5,
+ keyForObjectBool: false,
+ },
+ },
}
- }
-
- var remoteObject = new Stub('want-test');
- var want = {
- "deviceId": "", // An empty deviceId indicates the local device.
- "bundleName": "com.extreme.test",
- "abilityName": "MainAbility",
- "moduleName": "entry", // moduleName is optional.
- "parameters": {
- "keyRemoteObject":{"type":"RemoteObject", "value":remoteObject}
+ ```
+ * Array
+ ```ts
+ let want = {
+ bundleName: "com.example.demo",
+ abilityName: "com.example.demo.MainAbility",
+ parameters: {
+ keyForArrayString: ["str1", "str2", "str3"],
+ keyForArrayInt: [100, 200, 300, 400],
+ keyForArrayDouble: [0.1, 0.2],
+ keyForArrayObject: [{obj1: "aaa"}, {obj2: 100}],
+ },
}
- };
-
- this.context.startAbility(want, (error) => {
- // Start an ability explicitly. The bundleName, abilityName, and moduleName parameters work together to uniquely identify an ability.
- console.log("error.code = " + error.code)
- })
+ ```
+ * File descriptor (FD)
+ ```ts
+ import fileio from '@ohos.fileio';
+ var fd;
+ try {
+ fd = fileio.openSync("/data/storage/el2/base/haps/pic.png");
+ } catch(e) {
+ console.log("openSync fail:" + JSON.stringify(e));
+ }
+ var want = {
+ "deviceId": "", // An empty deviceId indicates the local device.
+ "bundleName": "com.extreme.test",
+ "abilityName": "MainAbility",
+ "moduleName": "entry", // moduleName is optional.
+ "parameters": {
+ "keyFd":{"type":"FD", "value":fd}
+ }
+ };
+ this.context.startAbility(want, (error) => {
+ // Start an ability explicitly. The bundleName, abilityName, and moduleName parameters work together to uniquely identify an ability.
+ console.log("error.code = " + error.code)
+ })
+ ```
- ```