0
我试图将一个额外的参数传递给第三个回调函数(它不是我自己的回调函数)。js - 将额外的参数传递给回调函数
const selectedItems = dt.rows({ selected: true });
const selectedIndexes = selectedItems.indexes();
const selectedData = selectedItems.data();
let data_object = [];
$.each(selectedData, (i, o) => {
data_object.push(o['PackageName']);
});
window.bridge.deleteApps(data_object, (success_list, selectedIndexes) => {
console.log("test"); // selectedIndexes -> undefined
});
背景:这是附带的Qt功能触发一个Python方法(PyQt的)时,第一个参数传递给Python中的第二参数是从蟒蛇法(success_list
)返回一个回调函数,但我也需要selectedIndexes
。
当我做
window.bridge.deleteApps(data_object, (success_list, abc=selectedIndexes) => {
console.log("test"); // abc + selectedIndexes is available
});
我很抱歉,我没有工作片断为你测试,但我做了关于一些回调和期试验研究其实不明白,所以我不能重现这种情况。
OMG你是对的...我很困惑AF,多数民众赞成我第一次尝试和IAM相当确信它说'selectedIndexes是undefined' - .- – FalloutBoy
如果你正在使用'const selectedIndexes = selectedItems.indexes();'作为你的调用来获得'selectedIndexes'的值,你确定你实际上从中获得了一个值吗?在实际进行其他调用之前,你能记录'selectedIndexes'吗? – stetsmando
是的,现在工作正常。我非常确定,当它昨天访问回调函数时,我得到了一个未定义的错误,这就是为什么我甚至要求帮助,但现在我可以轻松地访问回调中的变量......所以最后从来没有存在过问题:S感谢你的帮助! – FalloutBoy