如何修复"make sure to use ng-click to call the function"错误



我的代码中似乎有问题,我无法分辨它是什么。当我单击运行时,我收到一个错误,指出:

"在元素上,确保使用 ng-click 调用 minusOne() 功能。

我认为某处可能存在语法错误,但我无法分辨。

查看代码

<div class="rating">
    <p class="likes" ng-click="plusOne($index)">+ {{ product.likes }} </p>
    <p class="dislikes" ng-click="minusOne($index)">- {{ product.dislikes }}</p>
</div>

控制器代码

app.controller('MainController', ['$scope', function ($scope) {
$scope.title = 'This Month's Bestsellers';
$scope.promo = 'The most popular books this month.';
$scope.products = [{
    name: 'The Book of Trees',
    price: 19,
    pubdate: new Date('2014', '03', '08'),
    cover: 'img/the-book-of-trees.jpg',
    likes: 0,
    dislikes: 0
}, {
    name: 'Program or be Programmed',
    price: 8,
    pubdate: new Date('2013', '08', '01'),
    cover: 'img/program-or-be-programmed.jpg',
    likes: 0,
    dislikes: 0
}, {
    name: 'Harry Potter & The Prisoner of Azkaban',
    price: 11.99,
    pubdate: new Date('1999', '07', '08'),
    cover: 'http://upload.wikimedia.org/wikipedia/en/b/b4/Harry_Potter_and_the_Prisoner_of_Azkaban_(US_cover).jpg',
    likes: 0,
    dislikes: 0
}, {
    name: 'Ready Player One',
    price: 7.99,
    pubdate: new Date('2011', '08', '16'),
    cover: 'http://upload.wikimedia.org/wikipedia/en/a/a4/Ready_Player_One_cover.jpg',
    likes: 0,
    dislikes: 0
}];
$scope.plusOne = function (index) {
    $scope.products[index].likes += 1;
};
$scope.minusOne = function (index) {
    $scope.products[index].dislikes -= 1;
};}]);

在控制器代码的最底部,它应该尝试以下操作:

$scope.products[index].dislikes += 1;

尝试在div 上使用它,而不是 p 标签?(如果需要,将每个 p 包装在div 中)

相关内容

最新更新