簡體   English   中英

函數的角度返回值

[英]Angular return value from function

我有一個奇怪的情況。 我有以下HTML部分:

<div><span> {{ getTitle(story.date); }}</span> </div> 

現在這是控制器功能:

$scope.getTitle= function (storyDate) {
        var year = new Date(storyDate).getFullYear();
        if (!$scope.sectionTitleYear.contains(year)) {
            $scope.sectionTitleYear.push(year);
            return year;
        }
        else {
            return '';
        }
    };

這是sectionTitleYear的聲明:

$scope.sectionTitleYear = [];

現在,當我運行此代碼時,返回值是正確的值,但是在html中,我得到了空字符串。 每當我刪除推送代碼。 此代碼工作正常。 這是我刪除的推行代碼:

$scope.sectionTitleYear.push(year);

請告訴我該怎么辦。

僅當年份不在$scope.sectionTitleYear ,才返回年份,因此,如果刪除此行,它當然會起作用-這將防止將年份推入數組。

如果您說刪除此行后代碼正在運行,也許您應該始終返回年份,如下所示:

$scope.getTitle= function (storyDate) {
    var year = new Date(storyDate).getFullYear();
    if (!$scope.sectionTitleYear.contains(year)) {
        $scope.sectionTitleYear.push(year);
    }
    return year;
};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM