如何通过ui-router将params传递给子窗口

时间:2018-04-02 21:13:21

标签: javascript angularjs angular-ui-router

我有一个要求,我有一个带有按钮的父窗口。单击按钮执行一些逻辑,计算一些值并打开带有这些参数的子窗口。我正试图找到一个很好的方法来做到这一点。我目前的实施如下。

在我的ng-click方法中,我有

let location = this.$state.href('moveout', { entityUuid: this.entityUuid, count: count, params: params, options: options);
let unDockedWindow = this.$window.open(location, '', 'scrollbars=no,fullscreen=yes,toolbar=no');

这会成功打开一个带有url的子窗口,如下所示

#/moveout?entityUuid=8eb6c75e-5a06-333c-a4cf-a97d90995722&count=something&params=something&options=something

我能够像这样访问目的地中的数据

$state.params.entityUuid

然而我的问题是,其中一些属性可能很复杂,比如params和options。而且我没有必要想要一个有这么多参数并且看起来非常难看的网址。

我正在尝试查看是否有办法打开带有ui-router的多个参数的子窗口,而不将它们作为查询字符串参数传递。

我认为我不想使用ui-sref,因为需要传递的某些值需要根据某些逻辑来计算。因此在ng-click内部进行。

任何帮助,非常感谢。

0 个答案:

没有答案