首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在aikau小部件中初始化url.context?

如何在aikau小部件中初始化url.context?
EN

Stack Overflow用户
提问于 2016-12-04 16:56:02
回答 2查看 147关注 0票数 1

Aikau example定义如下:

代码语言:javascript
复制
{
  name: "alfresco/forms/controls/DojoSelect",
  config: {
     label: "List Type",
     name: "prop_dl_dataListItemType",
     value: "dl:event",
     optionsConfig: {
        publishTopic: "ALF_GET_FORM_CONTROL_OPTIONS",
        publishPayload: {
           url: url.context + "/proxy/alfresco/api/classes/dl_dataListItem/subclasses",
           itemsAttribute: "",
           labelAttribute: "title",
           valueAttribute: "name"
        }
     }
  }

}

请注意url.context。我在示例源代码中没有找到任何url定义。似乎url是在某个地方隐式初始化的。但是具体在哪里呢?url对象还有哪些其他字段/方法?

EN

回答 2

Stack Overflow用户

发布于 2016-12-05 16:53:06

Aikau将在service.js文件上构建URL。例如,您可以查看CRUDService.js文件并引用getUrlFromPayload方法,此方法的名称如下:

代码语言:javascript
复制
 onGetAll: function alfresco_services_CrudService__onGetAll(payload) {
var url = this.getUrlFromPayload(payload); .... }

并且它将被传递给请求对象,以发出请求。

希望这能对你有所帮助。

票数 1
EN

Stack Overflow用户

发布于 2016-12-05 19:48:34

url对象在WebScripts的所有JavaScript控制器中都可用。它是为方便起见而提供的众多内置对象中的一个(其他对象包括"remote“和"user”)。url.context将被配置为正在运行的应用程序的上下文。因此,返回的值通常是"share“(因为这是默认的应用程序上下文)。

为在共享层(即/ Share /services/...)上定义的API定义URL时,通常需要应用程序上下文。或存储库层(即/share/proxy/alfresco/...)。

应该使用url.context,因为可以将应用程序配置为具有替代上下文根,因此最好将代码编写为Surf可以处理的内容。

Surf和WebScripts比Aikau存在的时间要长得多,不幸的是,它们缺乏良好的文档。

支持url对象Java类是"org.springframework.extensions.webscripts.DefaultURLHelper“(它扩展了"org.springframework.extensions.webscripts.URLHelper").其他可用属性包括:

  • pageContext
  • uri
  • queryString
  • args
  • templateArgs
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40956994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档