尝试使用此函数时,出现typeError。

根据Immutable.js文档,我想将obj转换为普通的JS obj。

这是示例:

import { Map as iMap,
         toJS } from "immutable";

    let anExample = iMap({
        a : "a",
        b : "b"
    });
    console.log( "anExample is...", toJS( anExample ) );

我没有在Map上收到错误,但在toJS上却收到了错误。我究竟做错了什么?
谢谢,

最佳答案

您不需要导入toJS,因为它是在不可变对象(immutable对象)本身上找到的。根据您的示例,您将像这样进行处理:

import { Map as iMap } from "immutable";

let anExample = iMap({
    a : "a",
    b : "b"
});
console.log( "anExample is...", anExample.toJS() );

您可以执行此操作的另一种方法是导入 fromJS fromJS是将JS转换为不可变的“惰性”方法;但是,如果您需要特定的不可变结构(例如OrderedSet而不是List),则不是理想的选择。

您可以这样处理:
import { fromJS } from "immutable";

let anExample = fromJS({
    a : "a",
    b : "b"
});
console.log( "anExample is...", anExample.toJS() );

希望这会有所帮助,如果您有任何疑问,请通知我!

09-06 15:37