0
私は以下のような1つの設定データ構造を持っています。どのように複数のデータに1つの設定オブジェクトを共有することができます
const config = {
foo: 'bar',
king: [ { val: [], name: 'saber'}, { val: [], name: 'archer'} ],
};
上記の1つを以下のようなマルチデータオブジェクトに共有したいと考えています。
var data = {
group1: [ [1, 2, 3], ['a', 'b', 'c'] ],
group2: [ [4, 5, 6], ['d', 'e', 'f'] ],
};
私がはっきりと表現できないことを恐れて、例えば、私はこのような最終結果を得たいと思います。
私は下の方法compose
を書くが、最終的に、私は私が
Object.freeze()
を使用している場合でも
config
が変更されることがわかり、私は
config
を保護する見当がつかない
、各データにassign()
シェア1つの設定を使用してみてください
{
group1: {
foo: 'bar',
king: [ {val: [1,2,3], name:'saber'}, {val: ['a','b','c'], name:'archer'} ],
},
group2: {
foo: 'bar',
king: [ {val: [4,5,6], name:'saber'}, {val: ['d','e','f'], name:'archer'} ],
},
}
変数、あなたは私に何か提案を与えるだろうか?
var compose = function(data) {
let mix = {};
Object.keys(data).map(function(key) {
mix[key] = Object.assign({},
config
);
mix[key].king.map(function(val, index) {
mix[key].king[index].val = data[key][index]; // config will be changed here :(
});
});
return mix;
};
についてです。あなたが深いクローンconfig
に持って
おかげで多くのことを、あなたは私を助け:) –