В моем электронном приложении у меня есть код, который читает файл JSON и вставляет пункты меню:
var settingsdata = fs.readFileSync('./settings.json');
var jsonContent = JSON.parse(settingsdata);
for (var i = 0; i < jsonContent.length; i++) {
var obj = null;
obj = jsonContent[i];
console.log(obj.label);
console.log(obj.parameters);
contextMenu.insert(0,new MenuItem({
label: obj.label,
click: function() {
child_process.execFileSync(vExecutablePath, obj.parameters)
},
position: 'before'
}))
}
Проблема связана с обработчиком щелчка вставленных пунктов меню.Он выполняет команду только с последним вставленным элементом, но не индивидуально, даже если console.log(obj.parameters)
показывает правильные различные параметры для каждого элемента.