首页 > 解决方案 > 如何传递过滤器参数服务门户

问题描述

我有一个开箱即用的小部件,它包含一个表格。默认情况下,它有一个过滤器参数,如下所示

request.requested_forDYNAMIC90d1921e5f510100a9ad2572f2b477fe^ORrequest.opened_byDYNAMIC90d1921e5f510100a9ad2572f2b477fe^request.stateIN-7,-6,-5,1,2^request.active=true^EQ

它工作正常。

现在正在使用以下格式在其他页面中调用相同的小部件

服务器脚本:

`data.widgetName= $sp.getWidget("data-definition",'');`

html代码:

<sp-widget widget='data.widgetName'></sp-widget>

现在我需要将这些参数传递给这个小部件 request.requested_forDYNAMIC90d1921e5f510100a9ad2572f2b477fe^ORrequest.opened_byDYNAMIC90d1921e5f510100a9ad2572f2b477fe^request.stateIN-7,-6,-5,1,2^request.active=true^EQ

怎么能通过呢?

我已经参考了这个链接https://docs.servicenow.com/bundle/kingston-servicenow-platform/page/build/service-portal/concept/c_NestedWidgets.html

何我不明白如何用钥匙传递它?

请任何人帮助我。

标签: angularjsservicenow

解决方案


你的方法是正确的。你可以调用你的小部件

data.widgetName = $sp.getWidget("widget", '');

getWidget方法有两个参数。首先是您想要的小部件,其次是选项。你只是错过了选项。在您的小部件中,您可以定义此类选项。

以下是嵌入式数据表的示例:

服务器代码:

var yourFilter = "active=true";
data.tableWidget = $sp.getWidget("data-table", options = yourFilter);

HTML

<sp-widget widget="data.tableWidget"></sp-widget>

如果您想更深入地了解如何嵌入小部件而不是访问 ServiceNow 文档:

嵌入式小部件

https://docs.servicenow.com/bundle/kingston-servicenow-platform/page/build/service-portal/concept/c_NestedWidgets.html

创建选项

https://docs.servicenow.com/bundle/istanbul-servicenow-platform/page/build/service-portal/concept/c_WidgetInstanceOptions.html

干杯


推荐阅读