Browser 未从Firefox插件的事件页面触发通知

Browser 未从Firefox插件的事件页面触发通知,browser,firefox-addon,firefox-addon-sdk,browser-extension,Browser,Firefox Addon,Firefox Addon Sdk,Browser Extension,我在另外两个地方使用了相同的通知,而且效果很好,为什么当我单击上下文菜单时,它不会从中触发?我试过了。然后在browser.storage.sync.set(…之后启动它,我还试过从browser.storage.onChanged…方法启动它。为什么这个createNotification()方法在弹出窗口和选项文件中工作,而在后台脚本中不工作 let contextMenuItem = { id: "spendMoney", title: "Sp

我在另外两个地方使用了相同的通知,而且效果很好,为什么当我单击上下文菜单时,它不会从中触发?我试过了。然后在browser.storage.sync.set(…之后启动它,我还试过从browser.storage.onChanged…方法启动它。为什么这个createNotification()方法在弹出窗口和选项文件中工作,而在后台脚本中不工作

let contextMenuItem = {
    id: "spendMoney",
    title: "SpendMoney",
    contexts: ["selection"]
}

browser.contextMenus.create(contextMenuItem)
const isInt = function (value) {
    return !isNaN(value) &&
        parseInt(Number(value)) == value &&
        !isNaN(parseInt(value, 10));
}

browser.contextMenus.onClicked.addListener((clickData, tab) => {
    if (clickData.menuItemId == "spendMoney" && clickData.selectionText) {

        if (isInt(clickData.selectionText)) {
            browser.storage.sync.get(['total', 'limit'], function (budget) {

                let newTotal = 0;

                if (budget.total) {
                    newTotal += parseInt(budget.total);
                }

                newTotal += parseInt(clickData.selectionText);
                browser.storage.sync.set({
                    'total': newTotal
                })


            })
        }
    }

})

browser.storage.onChanged.addListener(function(changes,storageName) {
    browser.browserAction.setBadgeText({
        "text":changes.total.newValue.toString()
    });

})



let count = 0;

function createNotification(amount, newTotal, budget) {


    if (amount && newTotal >= budget.limit) {
        let notifOptions = {

            type: 'basic',
            title: 'limit reached!',
            message: `Oops... Looks like you've exceeded your limit! `
        };

        browser.notifications.create('limitNotif' + count, notifOptions)
        count += 1;
    }
}