在搞定「喜歡」的 API 之後,接下來我們就要回來做前端的界面了。
今天我們要開始大量的使用 AngularJS。首先首頁的作品都要改成前端 render了。
這邊我們使用 ng-repeat
.col-md-3(ng-repeat="artwork in artworks")
.panel.artwork(ng-controller="ArtworkItem")
figure
img.img-responsive(src="/artworks/{{artwork.picture}}")
(後略)
「喜歡」的動作也沒有什麼特別之處,就是使用 ng-click
a(ng-click="like(artwork._id)")
接到 controller 裡面的 $scope.like
app.controller('ArtworkItem', function(accountModel, artworkModel, $scope) {
$scope.like = function(artworkId) {
accountModel.like(artworkId).success(function() {
artworkModel.get(artworkId).success(function(result) {
$scope.artwork = result.artwork
})
})
}
});
這個做法是每次like 完都拉一次資料,這不是最好的做法,不過比較優化的寫法要比較久,所以暫時先這樣了。