aboutsummaryrefslogtreecommitdiffstats
path: root/packages/website/md/docs/0xjs/1.0.0/async.md
blob: bd5ae9d8adc08051a184c81057dd5783a73a752a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
0x packages are promise-based libraries. This means that whenever an asynchronous call is required, the library method will return a native Javascript promise. You can therefore choose between using `promise` or `async/await` syntax when calling our async methods.

_Async/await syntax (recommended):_

```javascript
try {
    const signature = await signatureUtils.ecSignOrderHashAsync(
        providerEngine,
        orderHashHex,
        maker,
        SignerType.Default,
    );
} catch (error) {
    console.log('Caught error: ', error);
}
```

_Promise syntax:_

```javascript
signatureUtils
    .ecSignOrderHashAsync(providerEngine, orderHashHex, maker, SignerType.Default)
    .then(function(signature) {
        console.log(signature);
    })
    .catch(function(error) {
        console.log('Caught error: ', error);
    });
```

As is the convention with promise-based libraries, if an error occurs, it is thrown. It is the callers responsibility to catch thrown errors and to handle them appropriately.