Imutable Record 类型

来源:互联网 发布:数据库系统的实现 编辑:程序博客网 时间:2024/06/04 19:02

参考文档:http://facebook.github.io/immutable-js/docs/#/Record/Record

Record 感觉像是一个强类型,只能包含定义时候的属性,不能新增或删除属性

入门demo,可以看到和普通的map没有什么特别不同

const { Record } = require('immutable')const ABRecord = Record({ a: 1, b: 2 })const myRecord = new ABRecord({ a: 3 })console.log(myRecord.toJS());

但是当new 的时候,无法赋予其它的值,(赋值无效),如下demo输出的依然是 a,b

const { Record } = require('immutable')const ABRecord = Record({ a: 1, b: 2 })const myRecord = new ABRecord({ c: 3 })console.log(myRecord.toJS());

当给record赋予其它值的时候,会报错

const { Record } = require('immutable')const ABRecord = Record({ a: 1, b: 2 })const myRecord = new ABRecord({ a: 3 })myRecord.set("c",4);

错误如下

throw new Error('Cannot set unknown key "' + k + '" on ' + recordName(this));
原创粉丝点击