大佬,修改了你的代码,想实现在zotero非前台程序时,对选中的条目进行添加#标签(目的对新添加的条目实现后台加标签功能),为什么添加的标签过一会就会自己消失掉呢?请问要怎么修改呢?
$$var inputText = "{标签}";
// 1. 替换所有的 "/" 为 ""
inputText = inputText.replace(/\//g, '');
// 2. 按两个连续空格拆分
var parts = inputText.split(" ");
var tagsArray = [];
// 始终反向遍历拆分的数组,生成带 "#" 的标签
for (var i = parts.length - 1; i >= 0; i--) {
var part = parts[i].trim();
if (part) {
tagsArray.push("#" + part);
}
}
// 遍历选中的条目并添加所有标签
var items = Zotero.getActiveZoteroPane().getSelectedItems();
for (let item of items) {
if (item.isRegularItem() && !(item instanceof Zotero.Collection)) {
for (let tag of tagsArray) {
item.addTag(tag, 0);
}
item.saveTx();
}
}
return tagsArray.join(", ");