2 votes

Charger dynamiquement du javascript dans une vue Ember

Est-il possible d'exécuter du Javascript à l'intérieur d'un template Ember View Handlebars ? Je veux exécuter le Javascript lorsque le modèle est ajouté au DOM.

window.App = Ember.Application.create()

App.TestView = Ember.View.create
    tagName: 'div'
    template: Ember.Handlebars.compile '<script>console.log("some javascript");</script><div>This is a view</div>'

App.TestView.append()

2voto

pangratz Points 11631

Le site didInsertElement sur une vue est invoquée lorsqu'elle a été ajoutée au DOM, cf. documentation .

Vous pouvez ensuite accéder à la vue ajoutée via this.$() voir http://jsfiddle.net/NuaA6/

Guidon :

<script type="text/x-handlebars" data-template-name="tmpl" >
    hello from template
</script>​

JavaScript :

App = Ember.Application.create({});

Ember.View.create({
    templateName: 'tmpl',
    didInsertElement: function() {
        console.log('view has been added to dom', this.$());
    }
}).append();

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X