AngularJS-使用ng-click在新窗口中打开链接

AngularJS - Opening links in a new window using ng-click

本文关键字:链接 在新窗口中打开 ng-click 使用 AngularJS-      更新时间:2024-02-06

首先,我不确定我提出的标题是否准确地描述了我要做的事情。

我有一张任务表,每个任务都有一个分配动作。基本上,在正常情况下,用户会单击链接,在链接中会调用将他们分配给任务,然后将他们重定向到任务详细信息页面。这可以通过一个简单的ng-click来调用assign函数,然后在成功时使用$location.path()函数进行重定向来完成。这样做,就不需要href属性。

但是,这也剥夺了通过"中键单击"或"ctrl+单击"在新选项卡中打开链接的能力,因为没有href值。例如,一些用户通常会一次将自己分配给多个任务。在一个典型的网站上,它只是一个常规的链接,进行一些处理,完成,然后加载他们想要访问的页面。因此,他们可以打开多个选项卡,因为所有选项卡都会处理请求,然后将页面作为响应返回。

所以我添加了一个ng-href属性,因为我在其中有一个ID,它有点工作。中键单击(或ctrl+单击)仍将调用ng-click函数,ng-href将打开新选项卡。但现在我遇到的问题是,由于assign函数调用是异步的,有时选项卡会加载,而不会显示它们已被分配,因为页面是在处理分配之前加载的。

有人知道我能做些什么来使这更可靠、更准确吗?

你不能只使用吗

        $window.open(LOCATION);

而不是$location.path()?