javascript
  • html
  • angularjs
  • 2014-08-30 44 views 1 likes 
    1

    我正在使用Angular,並嘗試創建一個函數在當前窗口中打開url。下面在控制器代碼實際上打開了新的窗口,而不是:單擊按鈕打開當前窗口中的網址

    $scope.openUrl = function(url) { 
        $window.open(url); 
    }; 
    

    ..when我用這個ng-click='openUrl("someurl")'

    因此,如何在當前窗口中打開?我試過ng-click='parent.open()',它不起作用。

    +1

    試試這個了window.location = NEWURL; – 2014-08-30 19:15:43

    回答

    0

    $ window是瀏覽器本地窗口對象的包裝。您可以使用此低級方法實際更改位置:

    $window.location.href = url; 
    

    $位置有點不同。它只能從瀏覽器URL字符串中提取和操作。其目的不是實際導航。

    它不能做什麼?當 瀏覽器URL更改時,它不會導致整個頁面重新加載。要在更改URL後重新加載頁面,請使用 較低級別的API $ window.location.href。 https://docs.angularjs.org/guide/$location

    1

    您可以通過使用相同的舊拜尼亞的JavaScript實現這一點:

    $scope.openUrl = function(url) { 
        window.location = url; 
    }; 
    
    +1

    值得一提的是$ window包裝器的存在使窗口對象可以進行測試。在你能夠使用$ window而不是window的情況下是一個好習慣。 – Antiga 2014-08-30 19:27:13

    相關問題