为什么我的简单对象不能使用Immutable.fromJS({})转换为Immutable.Map()

时间:2016-08-04 20:23:37

标签: immutable.js

为什么我的简单对象不能使用Immutable.fromJS({})转换为Immutable.Map()

这里是Map() - 按预期工作

> var mymap = Immutable.Map({test:0})
undefined
> mymap
Map { "test": 0 }

这里是.fromJS() - 没有按预期工作

> var mymap = Immutable.fromJS({test: 0});
undefined
> mymap
{ test: 0 }
> mymap.set('test', 1)
TypeError: mymap.set is not a function
    at repl:1:7
    at sigintHandlersWrap (vm.js:32:31)
    at sigintHandlersWrap (vm.js:96:12)
    at ContextifyScript.Script.runInContext (vm.js:31:12)
    at REPLServer.defaultEval (repl.js:308:29)
    at bound (domain.js:280:14)
    at REPLServer.runBound [as eval] (domain.js:293:12)
    at REPLServer.<anonymous> (repl.js:489:10)
    at emitOne (events.js:101:20)
    at REPLServer.emit (events.js:188:7)
> mymap
{ test: 0 }
> typeof mymap
'object'

使用

  • Node.js 6.3.0
  • Immutable.js 3.8.1

2016年8月18日更新: @oluckyman在评论中指出这发生在控制台中。正如问题所示,这也是我所看到的。我还没有测试过在节点文件中运行时是否会发生这种情况,但是控制台的结果并没有激发人们的信心。

1 个答案:

答案 0 :(得分:0)

你确定你输入的很好吗?它应该运作良好。

我刚测试过它们似乎工作正常。这是link到我的jsbin