我在一个项目中使用 Mithril JS,但我无法准确理解如何挂钩到 Ajax 生命周期。就像我有一个 Ajax 请求需要一段时间,我想显示一个微调器。非常基本,但我似乎无法弄清楚这是怎么发生的。
我想为微调器使用与 Ajax 请求正在寻找的内容相同的容器。
这是我的设置:
var Thing = function (data) {
var p = m.prop;
this.title = p(data.title);
this.timestamp = p(moment.unix(data.timestamp));
}
Thing.list = function(options) {
m.request({method: "GET", url: "/things.json", type: Thing, background: true});
};
MyApp.components.thingsList = {
controller: function ThingListController() {
this.things = m.prop([]);
Thing.list().then(this.things).then(m.redraw);
},
view: function thingListView(ctrl) {
return m('div#thing-tab', [
m('ul#things', [
ctrl.things().map(thingView)
])
]);
}
};
function thingView(thing) {
...some view stuff...
}
我已经让它按照我想要的方式工作,但我只是不知道如何挂钩到 ajax 生命周期。同样,我只想在请求开始时显示一个微调器,然后用 ajax 请求的结果替换它。
非常感谢任何和所有帮助!
谢谢,