我阅读了here,可以使用点符号来访问Record对象的道具,例如 person.Name X person.get('name')。但是,如果我尝试直接使用该属性访问它,它对我不起作用。
我的代码:
new Record({
id: 123,
description: 'Foo',
imgSrc: 'https://foo.co'
}))
如果我尝试直接访问 person.description 这个属性 description ,则无效。我应该使用 person.get('description')而不是直接访问它。
我做错了什么,因为它应该让我直接访问该物业?
答案 0 :(得分:3)
您使用的是Map,但使用点表示法的属性访问仅适用于Immutable.Record。以下是网站上的相关部分:https://facebook.github.io/immutable-js/docs/#/Record
//first make a template
var MyThingie = Record({id:123, description:'Foo', imgSrc: 'https://foo.co'});
//now create records
var myRecord = new MyThingie({description:'Not the default description'});
//outputs 'Not the default description'
console.log(myRecord.description);