Ich habe diese Schließung:Klon JavaScript-Funktion, Verschluss Umfang
function CFetchNextData(ofs, pag, fetchFunction) {
var offset = ofs;
var limit = pag;
return function(options, cb) {
//do stuff to create params
fetchFunction(params, cb);
offset += limit;
};
}
ich eine Variable auf diese Weise erstellen Sie dann:
var fetchInfo = CFetchNextData(0, 10, specificFetchFunction);
fetchInfo(options, myCB);
Damit jedes Mal wenn ich fetchInfo aufrufen, wird Paginierung automatisch auf die nächste Datenmenge. Das funktioniert gut, obwohl Ich möchte mehrere Instanzen haben: "FetchInfo", jeder hat seinen eigenen Umfang.
var A = fetchInfo; // I'd like a clone with its own scope, not a copy
var B = fetchInfo; // I'd like a clone with its own scope, not a copy
ich tun konnte:
var A = new CFetchNextData(ofs, pag, fetchFunction);
var B = new CFetchNextData(ofs, pag, fetchFunction);
Aber natürlich möchte ich Setup „ofs“ und „pag“ jedes Mal, während durch fetchInfo Klonen, würde ich eine stabile Paginierung haben, setzen Sie nur einmal und für immer. Wissen Sie, wie Sie das erreichen können? Vielen Dank im Voraus
Dank hilft. Das Fabrikdesign erreicht genau das, was ich will. Warum würdest du sagen, dass es keine Verbesserung ist? – valvince