例如,给出以下记录:是否有可能将流类型包装在不可变容器中?
type UserRecord = {
id: string;
name: ?string;
age: number;
}
有一些方法做以下等效:
/* @flow */
import { List, Map } from 'immutable'
const users: List<Map<UserRecord>> = List();
let user: Map<UserRecord>;
user = Map({ id: '666', age: 30 });
users.push(user);
否则我最终只是使用类似Map<string, any>
我想带走从使用Immutable.js和Flow类型系统。
请注意,有一个WIP immutable.js流接口,您需要手动将其包含到您的项目中。我不知道它是否运作良好,或者根本不知道。请参阅https://github.com/facebook/immutable-js/blob/master/type-definitions/immutable.js.flow和https://github.com/facebook/immutable-js/issues/203 – Nikita