Clone the example repo to get started quickly.
With promises
let doSomething = () => {
let module Let_syntax = Reason_async.Promise;
[%await let x = somethingPromisy
and y = anotherPromise];
/* ... */
[%awaitWrap let z = getFileContents()];
x + y + z
};
NOTE: You currently need to be using bsb-native
in your project in order for weird bugs not to happen on recompilation. You'll want "bs-platform": "git+https://github.com/bsansouci/bsb-native"
in your package.json.
yarn add reason_async
(or npm)reason_async
to your bs-dependencies in bsconfig.json
reason_async
to your ppx-flags
in bsconfig.json
Example bsconfig.json
:
{
"name": "myapp",
"refmt": 3,
"sources": "./src",
"bs-dependencies": ["reason_async"],
"ppx-flags": ["reason_async"]
}