Angularjs $ state在新标签中打开链接

我试图使用$ state.go函数实现“在新标签中打开链接”function。 如果有这样的话,那将是非常棒的:

$state.go('routeHere', { parameter1 : "parameter" }, { reload : true, newtab : true // or smth like target : "_blank" }); 

有没有办法使用AngularJS来做到这一点?

谢谢,

亚历克斯

更新:好的,我刚刚解决它使用下面的代码:

 var url = $state.href('myroute', {parameter: "parameter"}); window.open(url,'_blank'); 

我只是试过这个 – 显然,添加target="_blank"ui-sref协同工作:

 <a ui-sref="routeHere" target="_blank">A Link</a> 

省去了添加代码到你的控制器的麻烦,并给你hover的URL像任何正常的链接。 双赢!

如果您的应用程序位于子文件夹中,则可能无法在本地主机上运行。 其实我也有同样的问题。

我已经尝试过在线,并按预期工作,使用:

 <a ui-sref="routeHere" target="_blank">Link</a> 

我有类似的问题,如果以前的答案没有为您工作,请尝试这个。

 var url = '#' + $state.href('preview'); window.open(url,'_blank'); 

所以基本上在本地主机上工作,而不追加'#'它只是redirect到

本地主机/预览

, 代替

本地主机/ PROJECT_NAME /#/预览

我不是在这里传递数据,只是在新标签中打开$ state。

尝试这个!

<a ui-sref="routeHere({parameter: vm.parameter})" target="_blank"></a>

 ui-sref="routeHere" href=""target="_blank" 

这段代码解决了我的问题。

在一个锚标签中使用这个。