根据Angular 2指令,我有一个问题。我想用Angular 2重新创建Angular 1应用程序,但我被一个指令卡住了。
角度1中的一个看起来像这样:
app.directive('starRating', function () {
return {
restrict: 'A',
template: '<ul class="rating">' +
'<li ng-repeat="star in stars">' +
'<span class="glyphicon" ng-class="star.class" aria-hidden="true">' +
'</li>' +
'</ul>',
scope: {
ratingValue: '=',
max: '='
},
link: function (scope, elem, attrs) {
scope.stars = [];
for (var i = 0; i < scope.max; i++) {
if(i < scope.ratingValue){
scope.stars.push({
class: "glyphicon-star"
});
} else {
scope.stars.push({
class: "glyphicon-star gray"
});
}
}
}
}
});
我在html文件中这样调用它:
<div star-rating rating-value="movie.rating" max="5" ></div>
这只是一个有名字和收视率的忧郁的电影演员。通过指令,我只想创建5颗星,并且根据评级,应该填充星星的数量。
在角2中也可以这样做吗?如果是这样,将如何进行?我找不到任何合适的代码示例或教程。
彼得