FIX: In Ember 2.0 you can't bind Query Parametrs like this

This commit is contained in:
Robin Ward
2016-11-02 16:22:52 -04:00
parent 2d126cff8f
commit 95c8d66fe0
3 changed files with 19 additions and 33 deletions

View File

@ -1,38 +1,14 @@
import { default as computed } from 'ember-addons/ember-computed-decorators';
let lastSearch;
let lastOverridden;
export default Ember.Controller.extend({
_q: null,
searching: false,
siteTexts: null,
preferred: false,
_overridden: null,
queryParams: ['q', 'overridden'],
@computed
overridden: {
set(value) {
if (!value || value === "false") { value = false; }
this._overridden = value;
return value;
},
get() {
return this._overridden;
}
},
@computed
q: {
set(value) {
if (Ember.isEmpty(value)) { value = null; }
this._q = value;
return value;
},
get() {
return this._q;
}
},
q: null,
overridden: null,
_performSearch() {
this.store.find('site-text', this.getProperties('q', 'overridden')).then(results => {
@ -46,11 +22,14 @@ export default Ember.Controller.extend({
},
search(overridden) {
this.set('overridden', overridden);
const q = this.get('q');
if (q !== lastSearch || overridden) {
if (q !== lastSearch || overridden !== lastOverridden) {
this.set('searching', true);
Ember.run.debounce(this, this._performSearch, 400);
lastSearch = q;
lastOverridden = overridden;
}
}
}