2017-03-18 56 views
0

我注意到,在下面的代碼段爲什麼Immutable.js記錄中的數組是可變的?

const TaskRecord = new Immutable.Record({ 
    name: '', 
    requiredFor: [], 
}); 

class Task extends TaskRecord { 
} 

const task = new Task(); 

task.requiredFor真的是一個數組(調用get('requiredFor')任務類中產生同樣的結果),並沒有得到轉化爲Immutable.List ......這樣該記錄不是不可改變的。

這是爲什麼?如何解決這個問題?

+3

這是唯一的'Immutable.Record'這是不可改變的。你無法修復它,它的目的。 – zerkms

回答

0

好像在構造使魔不工作:

class Task extends TaskRecord { 

    constructor(values) { 
     super(Immutable.fromJS(values)); 
    } 

} 
相關問題