2016-05-06 48 views

回答

1

的問題是由於數據圖的實施defaults

在代碼的行:

if (obj[prop] == null) obj[prop] = source[prop]; 

obj[prop]是一個指向source[prop],這導致new Datamap()不同實例之間的存儲器中的共享狀態。

我已經解決使用深拷貝問題:

// Deep copy if property not set 
if (obj[prop] == null) { 
    if (typeof source[prop] == 'function') { 
     obj[prop] = source[prop].bind({}); 
    } 
    else { 
     obj[prop] = JSON.parse(JSON.stringify(source[prop])); 
    } 
} 

並開通了pull request修復它。