2017-01-08 65 views
1

一個新的選項卡下面的打字稿代碼將在當前瀏覽器選項卡常開如何打開與router.navigate

navigate($data: menuItem, $event: JQueryEventObject) { 
     //... 
     let a = $event.currentTarget as HTMLAnchorElement; 
     router.navigate(a.href);  
    } 

我如何在一個新的標籤開放router.navigate? (即$ event.ctrlKey爲true時)

+0

HTML鏈接做現在,我只需使用: '如果($ event.ctrlKey){window.open(URL); }' – Danielle

回答

2

是的,正如您@Daneille所評論的那樣,您必須按自己的方式處理,因爲durandal的路由器插件(navigate函數)不提供打開新選項卡的方法。

因此,最好處理你所評論的內容。

if ($event.ctrlKey) { 
    window.open(url); 
} 
+0

如何從路由器至少檢索URL?事後如果有人改變路線配置呢? – Gherman

0

我想還是在這樣

<a style=" text-decoration: none;" [routerLink]="['your-path',param1,param2]" target="_blank" >your label </a>