问题是用 gui.remember() 记住嵌套对象
Problem remember a nested object with gui.remember()
我有一个这样的嵌套对象:
var config = {
a: 1,
b: {
c: 2,
d: 3
}
}
我在 dat.gui
实例中使用:
var gui = new dat.GUI();
gui.remember( config );
gui.add( config, 'a' );
gui.add( config.b, 'c' );
gui.add( config.b, 'd' );
但 dat.gui
实例仅记住 config.a
(请参阅现场演示:https://jsfiddle.net/rvcristiand/cz08tLmr/4/)。
查看要在 localstorage 中复制的参数,我发现仅跟踪 a
值:
{
"preset": "Default",
"remembered": {
"Default": {
"0": {
"a": 9.9
}
}
},
"closed": false,
"folders": {}
}
当我打印出 gui.getSaveObject() 时我发现了同样的情况(我认为 pop windows 中显示的参数是用这个函数生成的)。
那么,有一种方法可以记住所有对象的值吗?
谢谢。
似乎不支持嵌套属性,但你可以记住多个配置。
gui.remember( config );
gui.remember( config.b );
gui.add( config, 'a' );
gui.add( config.b, 'c' );
gui.add( config.b, 'd' );
我有一个这样的嵌套对象:
var config = {
a: 1,
b: {
c: 2,
d: 3
}
}
我在 dat.gui
实例中使用:
var gui = new dat.GUI();
gui.remember( config );
gui.add( config, 'a' );
gui.add( config.b, 'c' );
gui.add( config.b, 'd' );
但 dat.gui
实例仅记住 config.a
(请参阅现场演示:https://jsfiddle.net/rvcristiand/cz08tLmr/4/)。
查看要在 localstorage 中复制的参数,我发现仅跟踪 a
值:
{
"preset": "Default",
"remembered": {
"Default": {
"0": {
"a": 9.9
}
}
},
"closed": false,
"folders": {}
}
当我打印出 gui.getSaveObject() 时我发现了同样的情况(我认为 pop windows 中显示的参数是用这个函数生成的)。
那么,有一种方法可以记住所有对象的值吗?
谢谢。
似乎不支持嵌套属性,但你可以记住多个配置。
gui.remember( config );
gui.remember( config.b );
gui.add( config, 'a' );
gui.add( config.b, 'c' );
gui.add( config.b, 'd' );