vendredi 8 juillet 2016

How to inject components in whole application in ember.js

I'm on developing a ember-cli project where I have created many reusable components. I want these components in every template(hbs) file. I can do in each template but this looks redundant to me since I've to write all these lines in every template. All I want to know is if I can inject components in all the templates like way services are injected into routes, components etc where ever I need.

Example of how I inject services is below

 /intializers/session-object.js
 export function intialize (application){
      application.inject('route','session','service:session');
      application.inject('controller','session','service:session');
      application.inject('component','session','service:session');
      application.inject('adapter','session','service:session');
 });

I tried injecting the components into templates as similar as above.

 /intializers/session-object.js
 export function intialize (application){
      application.inject('template','my-component','component:my-component');          
 });

As expected, the above code fails. No where in the ember guides is mentioned that I can inject components in templates. But, wanted to know if anybody did this before.

I believe there could be a strong reason why ember is not allowing us to inject components into templates.

Any help in explaining the reason why this cannot be implemented in ember.js is great or providing a solution if it can be implemented is awesome. Thanks in advance guys.




Aucun commentaire:

Enregistrer un commentaire