#javascript #electron #contextmenu
#javascript #electron #contextmenu
Вопрос:
я заставил функцию возвращать опцию меню. это работает, но возвращает ошибку.
мой код:
const { remote } = require('electron')
const { Menu } = remote
const tabTemplate = require("./menuTemplates/tabTemplate")
window.addEventListener('contextmenu', (e) => {
e.preventDefault()
if (e.target.id === "tabListItem") {
let menuTest = Menu.buildFromTemplate(tabTemplate(e)) //i get error here
menuTest.popup({ window: remote.getCurrentWindow() })
}
}, false)
tabTemplate.js
function template(clickedElement) {
return [
{
label: 'Delete',
click: function () { alert(clickedElement) }
}
]
}
module.exports = template
сообщение об ошибке :
Uncaught TypeError: tabTemplate is not a function
Комментарии:
1. Не удается воспроизвести, оно должно работать. Можете ли вы сделать a
console.log(typeof tabTemplate)
сразу после импорта и непосредственно перед использованием? Может быть, вы где-то переопределяете его.2. он возвращает объект
3. В какой позиции он говорит
object
? Проверьте сразу после импорта и непосредственно перед использованием.