Skip to content

Commit b5960d4

Browse files
committed
Added some client caching for searching tags.
1 parent 7df5df4 commit b5960d4

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

js/net/TagsModel.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,21 @@ SOFTWARE.
2727
var s = {};
2828
s.activePromise = null;
2929
s.existing = null;
30+
s.cache = {};
31+
32+
s._term = "";
3033

3134
s.search = function(term, existing) {
3235
if (s.activePromise) {
3336
s.activePromise.cancelled = true;
3437
}
3538

39+
s._term = term.toLocaleLowerCase();
40+
41+
if (s.cache[s._term]) {
42+
return Promise.resolve(s.cache[s._term]);
43+
}
44+
3645
s.existing = {};
3746
if (existing) {
3847
for (var i=0;i<existing.length;i++) {
@@ -55,6 +64,8 @@ SOFTWARE.
5564
cleanData.push(data[i].name);
5665
}
5766

67+
s.cache[s._term] = cleanData;
68+
5869
return Promise.resolve(cleanData);
5970
};
6071

0 commit comments

Comments
 (0)