使用参数生成aurelia管线并在新浏览器选项卡中打开

使用参数生成aurelia管线并在新浏览器选项卡中打开,aurelia,router,Aurelia,Router,我需要在新选项卡中打开一个带有定义参数的页面 在此之前,我只使用了一个参数,效果很好: window.open(this.theRouter.generate('transactionDetails', { id: id }), '_blank'); 但现在我需要再添加两个参数。 我尝试了以下方法: window.open(this.theRouter.generate('transactionDetails', { id: id, localtimezone: this.localTimeZ

我需要在新选项卡中打开一个带有定义参数的页面

在此之前,我只使用了一个参数,效果很好:

window.open(this.theRouter.generate('transactionDetails', { id: id }), '_blank');
但现在我需要再添加两个参数。 我尝试了以下方法:

window.open(this.theRouter.generate('transactionDetails', { id: id, localtimezone: this.localTimeZone, reporttimezone: this.reportTimeZone }), '_blank');
但结果我可以在URL中看到:

http://localhost:54072/index.html#/transactionDetails/28789?localtimezone=3&reporttimezone=0
我做错了什么?如何使用一些参数生成url


提前感谢。

您必须决定如何传递参数。 从示例的外观来看,您的路由似乎声明了“id”参数。 如果声明参数,最一致的方法是以类似的方式声明每个参数:

路由:“transactionDetails/:id/:localtimezone/:reporttimezone”,
这样你就可以得到这样的结果:

——/transactionDetails/123/1608260750758/1608260750758

另一种方法是使用查询字符串,而不使用路由器参数:

路线:“交易详情”,

这样,您就可以得到url:
\transactionDetails?id=123&localtimezone=1608260810884&reporttimezone=1608260810884

一个工作示例可在

问候


克里斯蒂安

你必须决定如何传递参数。 从示例的外观来看,您的路由似乎声明了“id”参数。 如果声明参数,最一致的方法是以类似的方式声明每个参数:

路由:“transactionDetails/:id/:localtimezone/:reporttimezone”,
这样你就可以得到这样的结果:

——/transactionDetails/123/1608260750758/1608260750758

另一种方法是使用查询字符串,而不使用路由器参数:

路线:“交易详情”,

这样,您就可以得到url:
\transactionDetails?id=123&localtimezone=1608260810884&reporttimezone=1608260810884

一个工作示例可在

问候


克里斯蒂安

期望的输出是什么样的?您能否提供一个URL的示例,该URL的格式是您想要的?所需的输出是什么样的?你能提供一个URL的例子,它的格式是你想要的吗?