We use the traversable instance on List to reimplement Promise.all() type functionality.
For example we want to conver:
[Task] => Task([])
Conver array of Task, into Task of array value.
To do that we can use traverse.
const fs = require(‘fs‘) const Task = require(‘data.task‘) const futurize = require(‘futurize‘).futurize(Task) const { List } = require(‘immutable-ext‘) const readFile = futurize(fs.readFile) const files = List([‘box.js‘, ‘config.json‘]) files.traverse(Task.of, fn => readFile(fn, ‘utf-8‘)) .fork(console.error, console.log)
时间: 2024-10-13 12:03:40