It may not be easier, but you could certainly cut out some async handling steps with rubico pipe
const getData = pipe(fetch, r => r.json());
const logIt = console.log;
I really like that last bit though, fsharp pipelines ftw
'http://foo' |> getData |> logIt;