如何删除浏览器操作标志?
How can I remove a browser action badge?
我正在使用 chrome.browserAction.setBadgeText 向我的扩展浏览器图标添加一个徽章,显示用户待办事项列表中未完成任务的数量。
当用户的任务为零时,我得到的结果是:
但是我更喜欢在用户的任务为零时根本不显示徽章。
这是我的代码:
setBrowserActionBadge: function(allTasks) {
var task_count;
task_count = allTasks.filter(function(task) {
task.isDone === false;
}).length;
task_count = task_count.toString();
if (task_count === 0) {
task_count = '';
}
chrome.browserAction.setBadgeText({
'text': task_count
});
chrome.browserAction.setBadgeBackgroundColor({
'color': '#333333'
});
};
此方法是 运行 每次检查或添加任务时,它都会实时更新。
理想的情况是 chrome.browserAction.clearBadge
当任务计数为 0 时我可以 运行 移除徽章。
你很接近。您确实想传递一个空字符串,但是您的测试 if (task_count === 0)
永远不会为真,因为您使用的是 === 而不是 ==。任务计数是一个字符串,因此永远不会 === 0(数字)。
您可以使用 chrome 调试器轻松找到此问题。 if
中的断点永远不会命中,所以你可以去看看它。
我正在使用 chrome.browserAction.setBadgeText 向我的扩展浏览器图标添加一个徽章,显示用户待办事项列表中未完成任务的数量。
当用户的任务为零时,我得到的结果是:
但是我更喜欢在用户的任务为零时根本不显示徽章。
这是我的代码:
setBrowserActionBadge: function(allTasks) {
var task_count;
task_count = allTasks.filter(function(task) {
task.isDone === false;
}).length;
task_count = task_count.toString();
if (task_count === 0) {
task_count = '';
}
chrome.browserAction.setBadgeText({
'text': task_count
});
chrome.browserAction.setBadgeBackgroundColor({
'color': '#333333'
});
};
此方法是 运行 每次检查或添加任务时,它都会实时更新。
理想的情况是 chrome.browserAction.clearBadge
当任务计数为 0 时我可以 运行 移除徽章。
你很接近。您确实想传递一个空字符串,但是您的测试 if (task_count === 0)
永远不会为真,因为您使用的是 === 而不是 ==。任务计数是一个字符串,因此永远不会 === 0(数字)。
您可以使用 chrome 调试器轻松找到此问题。 if
中的断点永远不会命中,所以你可以去看看它。