如何在Alfresco-share中引用子nodeRef?

时间:2016-10-09 16:00:59

标签: alfresco yui alfresco-share

我正在开发自定义doclib javascript。我有一个类似于A - >的文件夹结构。 B - > C其中A和B有多个孩子。我有通过

找到的文件夹A的noderef

" this.doclistMetadata.parent.nodeRef"

从节点获取uri的最简单方法是什么?" C"在停留在节点A级别?文件路径可以用于此目的吗?

2 个答案:

答案 0 :(得分:2)

你应该得到ScriptNode对象(ScriptNode class):

var A = this.doclistMetadata.parent;
// or by nodeRef
// var A =  search.findNode("workspace://SpacesStore/abcdefg-your-A-folder-id");

并使用ScriptNode API

var C = A.childByNamePath("B/C");
print(C.name+" nodeRef: "+C.nodeRef.toString());
print(C.name+" children: "+C.childFileFolders());

它适用于任何ScriptNode对象,虚拟/智能文件夹。

答案 1 :(得分:0)

我认为你可以使用它:

例如,在工作流程中,您可以搜索ID为“page_x002e_data-form_x002e_task-edit_x0023_default_assoc_packageItems”的元素。如果关联的文档不止一个,则该值将是逗号分隔的noderefs列表。

var nodeRef = YAHOO.util.Selector.query("#page_x002e_data-form_x002e_task-edit_x0023_default_assoc_packageItems")[0].value;

使用浏览器调试工具,您可以检查html。正如您在下面附带的图像中看到的那样,Alfresco将附加到任务的文档存储在隐藏的输入中。你可以使用YAHOO来获得它。

enter image description here

(资料来源:https://stackoverflow.com/a/35257692/4337310