我有一个xml文档。
<product-inventory>
<product>
<name>shoe</name>
<price>100</price>
<date>2020-05-31</date>
</product>
<product>
<name>dress</name>
<price>100</price>
<date>2020-06-01</date>
</product>
<product>
<name>dress</name>
<price>200</price>
<date>2020-06-02</date>
</product>
</product-inventory>
我写了一个程序来更新第二个 价钱 元素,审核这样的更新,最后检索更新后的文档,这个程序包含三个功能。当程序到达最后的检索步骤时,我仍然可以看到旧的文档,如果我打开另一个窗口,我确实可以看到更新的文档。 如果我打开另一个窗口,我确实看到了更新的文档。
<product-inventory>
<product>
<name>shoe</name>
<price>100</price>
<date>2020-05-31</date>
</product>
<product>
<name>dress</name>
<price>700</price>
<date>2020-06-01</date>
<audit>
<modifiedBy>admin</modifiedBy>
<modifiedDate>2020-06-02T16:12:14.9664853-04:00</modifiedDate>
</audit>
</product>
<product>
<name>dress</name>
<price>200</price>
<date>2020-06-02</date>
</product>
</product-inventory>
功能的要点。
function updateDoc() {
**************
xdmp.nodeReplace(
**************
};
function auditHistory() {
*********************
xdmp.nodeInsertAfter(
*********************
};
function retrieveDoc() {
return fn.collection('product')
};
xdmp.invokeFunction(function(){
declareUpdate();
updateDoc();
auditHistory();
}),
retrieveDoc();
谁能解释一下,为什么当程序到了最后一步时,我仍然看到旧的文件 retrieveDoc()
?
我相信你需要包裹 retrieveDoc()
变成 xdmp.invokeFunction
以查看更新后的文件。
xdmp.invokeFunction(() => {
return retrieveDoc()
})