我正在尝试使用标题栏上启用的编辑按钮创建一个简单的Alfresco dashlet。不幸的是,我不知道如何使编辑按钮真正显示在标题栏上。

这是我到目前为止的内容:

dashlet desc文件(.desc.xml)

<webscript>
   <shortname>Sample</shortname>
   <description>Displays a Sample dashlet</description>
   <family>dashlet</family>
   <url>/mycompany/components/dashlets/sample-dashlet</url>
</webscript>


我的主要freemarker模板文件(.ftl)

<script type="text/javascript">
    //<![CDATA[
    var sampleDashlet = new MyCompany.dashlet.SampleDashlet("${args.htmlid}").setOptions({
        "componentId": "${instance.object.id}",
        "siteId": "${page.url.templateArgs.site!""}",
        "title": "${msg("header")}"
    }).setMessages(${messages});
    new Alfresco.widget.DashletResizer("${args.htmlid}", "${instance.object.id}");

    var editDashletEvent = new YAHOO.util.CustomEvent("onDashletConfigure");
    editDashletEvent.subscribe(sampleDashlet.onConfigClick, sampleDashlet, true);

    new Alfresco.widget.DashletTitleBarActions("${args.htmlid}").setOptions({
        actions: [{
            cssClass: "edit",
            eventOnClick: editDashletEvent,
            tooltip: "${msg("dashlet.edit.tooltip")?js_string}"
        }]
    });
    //]]>
</script>

<div class="dashlet-1">
 <div> Test </div>
</div>


看来问题一定出在我的配置中,但是我找不到。有人能指出我正确的方向吗?

最佳答案

如果您想要一个非常简单的dashlet的工作示例,该示例以这种方式设置为可配置,请参见http://code.google.com/p/alfresco-get-latest-document。这篇博客文章设置了基本功能:http://ecmarchitect.com/archives/2012/05/08/1592。并且此博客文章对此进行了扩展,以使初始dashlet可配置:http://ecmarchitect.com/archives/2012/05/15/1599

在将您的FTL与我的FTL进行比较时,我想知道您的div类/ id是否需要遵循以下模式:

  <div class="dashlet getlatestdoc">
  <div id="getlatestdoc_title" class="title">
    ${title}
  </div>


否则,编辑按钮将如何知道在哪里进行渲染?

07-24 18:12