Skip to content

Commit a15769f

Browse files
committed
application: Move searchQuery property to the search service
1 parent 4eb4e2e commit a15769f

File tree

5 files changed

+14
-9
lines changed

5 files changed

+14
-9
lines changed

app/controllers/application.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import Controller from '@ember/controller';
2-
import { oneWay } from '@ember/object/computed';
32
import { on } from '@ember/object/evented';
43
import { inject as service } from '@ember/service';
54

@@ -8,7 +7,6 @@ import { EKMixin, keyDown, keyPress } from 'ember-keyboard';
87
export default Controller.extend(EKMixin, {
98
flashMessages: service(),
109
search: service(),
11-
searchQuery: oneWay('search.q'),
1210
session: service(),
1311

1412
keyboardActivated: true,
@@ -28,7 +26,7 @@ export default Controller.extend(EKMixin, {
2826
search() {
2927
this.transitionToRoute('search', {
3028
queryParams: {
31-
q: this.searchQuery,
29+
q: this.search.inputValue,
3230
page: 1,
3331
},
3432
});

app/routes/index.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import { inject as service } from '@ember/service';
33

44
export default Route.extend({
55
fastboot: service(),
6+
search: service(),
67

78
headTags() {
89
return [
@@ -17,7 +18,7 @@ export default Route.extend({
1718
},
1819

1920
setupController(controller) {
20-
this.controllerFor('application').set('searchQuery', null);
21+
this.search.set('inputValue', null);
2122

2223
if (!controller.dataTask.hasData) {
2324
let promise = controller.dataTask.perform();

app/routes/search.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
import Route from '@ember/routing/route';
2+
import { inject as service } from '@ember/service';
23

34
export default Route.extend({
5+
search: service(),
6+
47
queryParams: {
58
all_keywords: { refreshModel: true },
69
page: { refreshModel: true },
@@ -15,7 +18,7 @@ export default Route.extend({
1518
},
1619

1720
setupController(controller, params) {
18-
this.controllerFor('application').set('searchQuery', params.q);
21+
this.search.set('inputValue', params.q);
1922
controller.dataTask.perform(params);
2023
},
2124
});

app/services/search.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1+
import { oneWay } from '@ember/object/computed';
12
import Service from '@ember/service';
23

34
export default class SearchService extends Service {
45
q = null;
6+
7+
@oneWay('q') inputValue;
58
}

app/templates/application.hbs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
name="q"
1616
id="cargo-desktop-search"
1717
placeholder="Click or press 'S' to search..."
18-
value={{this.searchQuery}}
19-
oninput={{action (mut this.searchQuery) value="target.value"}}
18+
value={{this.search.inputValue}}
19+
oninput={{action (mut this.search.inputValue) value="target.value"}}
2020
autocorrect="off"
2121
autocapitalize="off"
2222
autofocus="autofocus"
@@ -103,8 +103,8 @@
103103
name="q"
104104
id="cargo-mobile-search"
105105
placeholder="Search"
106-
value={{this.searchQuery}}
107-
oninput={{action (mut this.searchQuery) value="target.value"}}
106+
value={{this.search.inputValue}}
107+
oninput={{action (mut this.search.inputValue) value="target.value"}}
108108
autocorrect="off"
109109
required
110110
>

0 commit comments

Comments
 (0)