Angularjs 投票小部件的最小值为零(无否定)

Angularjs 投票小部件的最小值为零(无否定),angularjs,Angularjs,我有一个投票小部件,网站的访问者可以对他们喜欢的游戏投赞成票或反对票。然而,观众也可以投反对票 例如,如果示波器上mygame对象的当前voteCount设置为0,则用户可以出现,按下向下箭头并将其更改为-1。我怎样才能阻止这种事情发生 我可以通过在投票前进行检查手动完成这项工作,但是没有角度过滤器来完成这项工作吗 另外,允许用户进行一次投票而不是无止境投票的最快方式是什么?饼干是最快的方式吗?还是HTML5的本地存储 CTRL代码 myApp.controller('VotingCtr

我有一个投票小部件,网站的访问者可以对他们喜欢的游戏投赞成票或反对票。然而,观众也可以投反对票

例如,如果示波器上my
game
对象的当前
voteCount
设置为
0
,则用户可以出现,按下向下箭头并将其更改为
-1
。我怎样才能阻止这种事情发生

我可以通过在投票前进行检查手动完成这项工作,但是没有角度过滤器来完成这项工作吗

另外,允许用户进行一次投票而不是无止境投票的最快方式是什么?饼干是最快的方式吗?还是HTML5的
本地存储

CTRL代码

    myApp.controller('VotingCtrl', function($scope){
    $scope.games = [
        {
            name: 'Watch Dogs',
            description: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam ut felis dapibus, bibendum dui eu.',
            imgUrl: 'img/watchdogs.jpg',
            voteCount: 0
        },
        {
            name: 'Thief',
            description: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam ut felis dapibus, bibendum dui eu.',
            imgUrl: 'img/thief.jpg',
            voteCount: 0            
        },
        {
            name: 'Fifa 2014',
            description: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam ut felis dapibus, bibendum dui eu.',
            imgUrl: 'img/fifa2014.jpg',
            voteCount: 0
        }
    ]

    $scope.voteUp = function(game) {
        game.voteCount += 1;
    };

    $scope.voteDown = function(game) {
        game.voteCount -= 1;
    };
});

一种方法是,如果voteCount=0,将voteDown方法更改为不递减

另一种方法(我更喜欢)是在voteCount达到0时禁用downVote按钮,使用ng disabled。这将向用户清楚地表明,他/她不能再投否决票了

编辑:用于禁用ng的伪代码。 在您看来,您可以这样做,假设您正在禁用跨度

<span ng-disabled="isDownVoteDisabled(game)"></span>

在控制器中,可以定义

$scope.isDownVoteDisabled = function(game) {
     return game.voteCount <= 0;
}
$scope.isDownVoteDisabled=函数(游戏){

return game.voteCount一种方法是,如果voteCount=0,则将voteDown方法更改为不递减

另一种方法(我更喜欢)是,如果voteCount已达到0,则使用ng disabled禁用downVote按钮。这将向用户表明,他/她不能再进行downVote

编辑:用于禁用ng的伪代码。 在您看来,您可以这样做,假设您正在禁用跨度

<span ng-disabled="isDownVoteDisabled(game)"></span>

在控制器中,可以定义

$scope.isDownVoteDisabled = function(game) {
     return game.voteCount <= 0;
}
$scope.isDownVoteDisabled=函数(游戏){

return game.voteCount什么是AngularJS过滤器?AngularJS作为一个框架,为您调用了一个函数(在本例中为
voteDown
)-该函数的逻辑由您决定。因此,请在函数内部进行检查,以确保投票不会变成负数!AngularJS filter是什么意思?AngularJS作为一个框架,为您调用了一个函数(在本例中为
voteDown
)-该函数的逻辑由您决定。因此,在函数中进行检查,确保投票不会变成否定的!啊。好。是的,这是另一种选择-输入一些代码,展示他如何使用
ng disabled
是的,请!这将对我和未来的人解决这个问题有所帮助。啊。好。是的,这是另一种选择-输入一些代码,展示他如何使用
ng disabled
是的,请!这将对我和未来的人解决这个问题有所帮助。