见下文。
首先,该脚本从 Github API 获取 4 个项目并呈现一个列表。如果您提交“NEXT”按钮,脚本会在重新发送 Get 请求后重新绘制列表。
获取请求。
repo.Repo.getList = function (api) {
return m.request({
method: "GET",
url: api,
type: repo.Repo,
extract: repo.linkHeader.setLinkHeader,
initialValue: []
})
.then(function (data) {
// bad solution.
return repo.vm.list(repo.vm.list().concat(data));
});
};
连接数组。
repo.vm.api(links['next'])
return m('button', {onclick: repo.vm.add}, 'NEXT');
它按预期工作。但是,这是不好的解决方案,不是吗?我认为这个 concat 过程应该在 View-Model (repo.vm) 中完成。
有什么好的方法吗?或者这样可以吗?