2016-07-06 54 views
0

我想在setIn中返回一个嵌套值,我现在正在这样做,是我正在访问我需要的值,但是我需要先映射它。不可变提供了这个,但是,我需要在我的数组后使用Immutable.Map().map(..)。我从我的方法得到一个返回的值,但它不包含任何值,它应该。任何人都知道另一种方法来完成这一点enter image description here从setIn返回一个映射 - ImmutableJS

回答

1

您需要将一个iterable传递给Immutable.Map()构造函数,否则您将创建一个空映射。

如果没有更多的细节,很难精确,但假设“结果”是一个资源数组,并且您需要一个资源ID数组,而不是像这样的东西应该工作。

let tempStateId = newState.setIn([populateKey, 'íds'], Immutable.Map(result).map(resource => resource.id)) 
+0

newState已经是一个不可变对象,因此它应该工作正常,因为它是:) –

+0

欢迎:)呀,你不需要Immutable.Map()'result.map(资源=>资源。 id)'作为第二个参数应该足够了 – Smilev

+0

啊,好吧!谢谢! –

相关问题