这可能是一个愚蠢的问题,但我在撇号的子类中使用self.docBeforeSave,试图根据片段的富文本体生成片段的新属性。我能够很好地检索所有内容,但是当我尝试保存它时,没有任何内容会进入数据库。此外,我现在每次尝试保存时都会收到错误。我没有使用带下划线的房产。代码如下:
construct: function (self, options) {
self.docBeforeSave = function (req, doc) {
if (doc.type !== self.name) {
return
}
var toc = [];
var ind = 1;
for (item of doc.body.items) {
if (item.type == "apostrophe-rich-text") {
var regexp = /<h[1-6]>(.*)<\/h[1-6]>/g;
var headings = item.content.match(regexp);
if (headings) {
for (heading of headings) {
var hOld = heading;
var hID = "sect-" + ind++;
var hCont = heading.replace(regexp, "$1");
var hNew = heading.replace(/(<h[1-6])/, "$1 id=\"" + hID + "\"");
item.content.replace(hOld, hNew);
var link = '<a href="#' + hID + '">' + hCont + '</a>';
toc.push(link);
}
}
}
}
ind = 1;
doc.contArr = toc;
console.log(doc.contArr);
}
}