AngularJSは初めてです。ng-repeat
データのリストをレンダリングするために使用したいと思います。
<abbr class="timeago" title="2012-10-10 05:47:21"></abbr>
レンダリング後、各データは同じようになっている必要があります。そして、jqueryプラグインを使用timeago
して、人間にわかりやすいテキストに変換することができますabout 1 hour ago
。
私のコードは以下の通りです。しかし、それは効果がありません。助けてください。
編集:私の問題は、正しいhtmlをレンダリングできることです。ただし、コードはdirective
実行されません。
html:
<div ng-app='weiboApp' ng-controller="WeiboListCtrl">
<table><tbody>
<tr ng-repeat='w in weibo' weiboLister='w'>
<td>{{ w.text }}></td>
<td><abbr class="timeago" title="{{ w.created }}"></abbr></td>
</tr>
</tbody></table>
</div>
js:
var module = angular
.module('weiboApp', [])
.directive('weiboLister', function () {
return {
restrict: 'A',
link: function (scope, element, attr) {
scope.watch('w', function (val) {
console.log(element); //this never run
element.find("abbr.timeago").timeago(); //this never run
}, true);
}
}
});
function WeiboListCtrl($scope, $http) {
$http.get('/api/weibo/list').success(function(data) {
$scope.weibo = data;
});
}