0

如何延遲從$scope.$emit獲得的值,並在頁面加載後顯示它?我有這樣的功能:

$scope.ActiveMenu = function (number) 
    { 
     $scope.selectedLink = number; 

     $scope.$emit('onAccountMenuSelection', $scope.selectedLink); 

    } 

在其他控制器我有:

$rootScope.$on('onAccountMenuSelection', _onAccountMenuSelection); 

現在我送價值從一個網頁到另一個,但它總是先執行...我怎麼能設置該值最後執行?

回答

1

$emit$timeout,這將運行在下一個摘要週期的代碼。

$timeout(function(){ 
    $scope.$emit('onAccountMenuSelection', $scope.selectedLink); 
}) 
+0

我需要GET值最後,我發出?如果你知道我的意思,不發送... – None

+0

@你想發送數據嗎?你可以更新你的問題.. –

+0

我有佈局菜單,它有一個控制器,然後我有內容,它有另一個控制器,這就是爲什麼我使用發射....但問題是,在內容我有$範圍。 selectedLink = 0;當我從第一頁發出數據...例如數字5它顯示我5號,然後0,我想顯示我0,然後5 – None