我正在尝试使用forge.prefs
来存储变量,但似乎没有任何保存。
我使用以下内容:
var all = forge.prefs.keys(function(keysArray){ return keysArray},
function(content){return content});
forge.logging.log(all);
但这始终会返回undefined
我也有同样的设置问题,似乎没有任何工作。
var set = forge.prefs.set(key,value,function(){},function(content){return content;});
forge.logging.log(set);
再次返回undefined
并且没有错误或其他任何内容。
我做错了吗?
更新
我不会做以下事情:
var get = forge.prefs.get(key,
function(value){return value;},
function(error){forge.logging.log(error);
});
if(get){
// do something here
}else{
// do something here
}
答案 0 :(得分:0)
看起来你没有在forge.pref.set成功函数中返回任何内容。您的退货内容;在错误函数中,如果它没有抛出错误,你将不会返回任何内容。
试试这个:
var set = forge.prefs.set(key,value,function(){ return value; },function(content){return content;});
forge.logging.log(组);
答案 1 :(得分:0)
这些方法是异步的,这意味着可以在回调成功和返回错误函数之前执行后续代码。依赖于此结果的所有后续代码应在回调中运行:
forge.prefs.keys(function(keysArray){ // success
forge.logging.log(keysArray);
// subsequent code relying on a positive outcome here ...
},
function(error){ // error
forge.logging.log('Something bad happened: ' + error);
});
forge.prefs.set(key, value, function(){ // success
forge.logging.log(key + ' was properly set);
// subsequent code relying on a positive outcome here ...
},
function(error){ // error
forge.logging.log('Something bad happened: ' + error);
});
更新:使用它来实现问题的更新部分:
var get;
forge.prefs.get(key, function(value){ // success
get = value;
forge.logging.log('Found value: ' + get);
// subsequent code here ...
},
function(error){ // error
forge.logging.log('Something bad happened: ' + error);
});