Skip to content

Instantly share code, notes, and snippets.

@thangngoc89
Forked from mhallin/App.re
Created August 6, 2018 12:23
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save thangngoc89/9b8776cdc4e3ad1b72dc5dc5d3a28658 to your computer and use it in GitHub Desktop.
Save thangngoc89/9b8776cdc4e3ad1b72dc5dc5d3a28658 to your computer and use it in GitHub Desktop.
Async import pattern
PageModule.fetchModule("./MyComponent")
|> Js.Promise.then_(m => send(SetRootElement(m())));
let component = ReasonReact.statelessComponent("MyComponent");
let make = (_) => {
...component,
render: (_) => <div />
};
let make = () => make([||]);
include PageModule.M;
module type M = {
let make: unit => ReasonReact.reactElement;
};
type m = Js.t({ . make: unit => ReasonReact.reactElement });
[@bs.val] external fetchModule: string => Js.Promise.t(m) = "import";
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment