2
我有一个模板,我正在改变注入偏序的方法。它有'经典'的注入方式。我想用紧凑的形式替换它。我不能做这些代码行。我试过了,但我无法理解结构。因为我习惯于另一种形式。有人能帮助我吗?Angular的另一种注入方法
(function() {
'use strict';
angular.module('app.data')
.factory('postResource', postResource)
.factory('postsUtils', postsUtils);
postResource.$inject = ['$resource'];
function postResource($resource) {
return $resource('/api/posts/:id', {id: '@id'}, {
update: {
method: 'PUT'
}
});
}
postsUtils.$inject = ['postResource'];
function postsUtils(postResource) {
function postsDuringInterval(posts, days) {
var today = new Date();
var interval = 86400000 * days;
var postsDuringInterval = [];
posts.forEach(function(post) {
var postDate = new Date(post.date);
today - postDate < interval && postsDuringInterval.push(post);
});
return postsDuringInterval;
}
function recent(posts, postsNum) {
posts.sort(function(a, b) {
if (a.date < b.date) return 1;
else if (a.date == b.date) return 0;
else return -1;
});
return posts.slice(0, postsNum || 1);
}
function lastEdited(posts) {
var lastEdited = posts[0];
posts.forEach(function(post) {
lastEdited = lastEdited.date < post.date ? lastEdited : post;
});
return lastEdited;
}
return {
postsDuringInterval: postsDuringInterval,
lastEdited: lastEdited,
recent: recent
}
}
})();
谢谢,但我不明白我的代码。这些功能是连接到控制器还是服务? – panagulis72
该服务。你可以调用服务的方法,因为它被注入。 *注意,这些也应该是单独的文件。还要注意'this'和'self'。他们是不同的和重要的理解。 – Drew1208
这是正确的吗? https://plnkr.co/edit/LOugzgRN5K5JZPwb7IgR?p=preview – panagulis72