书签观察器中的错误,同时构建firefox插件

时间:2014-04-04 12:21:54

标签: firefox firefox-addon firefox-addon-sdk gecko

好的,我已经为书签服务创建了一个观察员,
当删除书签项目时,观察者会触发一个函数onItemRemoved: function(id, folder, index)

函数中的参数是(id,文件夹,索引)
当我尝试使用getItemTitle(id)getBookmarkURI(id).spec;访问书签URL和标题时,我得到一个NSI ILLEGAL VALUE ERROR。
书签的id是一个整数(1935等)
无法理解为什么不返回书签网址?任何线索?

1 个答案:

答案 0 :(得分:1)

删除书签项后,id将不再有用。 onItemRemoved方法比你提到的三个方法需要更多的参数,它需要aId, aParentId, aIndex, aItemType, aURI, ...所以你可以使用aURI参数来获取你感兴趣的网址。

更好的选择是使用sdk/places/events模块,如下所示:

const { events } = require('sdk/places/events');

events.on('bookmark-item-removed', ({ data }) => {
  let url = data.url;
  // ...
})