2016-11-02 4 views
0

Ich benutze Express-Lenker als meine Templating Engine und ich benutze ein Layout für alle meine Ansichten. Ich möchte jedoch Skripte über die Ansicht für bestimmte Seiten hinzufügen können. Sehr ähnlich wie in diesem Beispiel: is there a way to add CSS/JS later using EJS with nodejs/expressHinzufügen von Skripten in Express-Lenker aus Sicht

Ich möchte meine Skripte nach den Standard-Skripten hinzufügen, die für alle Seiten verwendet werden (Bootstrap, Jquery). Diese sind an der Unterseite des Körpers in meinem Layout platziert, etwa so:

<html> 
<header> 
... 
</header> 
<body> 
... 
{{{body}}} 

<script src="/js/jquery.min.js"></script> 
<script src="/js/bootstrap.min.js"></script> 
</body> 
</html> 

Wie würde ich mich über diese mit Lenkern tun? Oder ist es am besten, EJS zu verwenden? Oder kann ich beides benutzen?

Jede Hilfe ist sehr geschätzt, Freece

Antwort

2

Es macht nichts! Ich erkannte, dass diese Methode den Grundlagen von Lenker widersprechen würde. Stattdessen habe ich folgendes mein Controller:

var scripts = [{ script: '/js/myTestScript.js' }]; 
... 
res.render('contact', { title: 'Kontakt', scripts: scripts }); 

Und in meinem Layout sieht es wie folgt aus:

... 
<script src="/js/jquery.min.js"></script> 
<script src="/js/bootstrap.min.js"></script> 
{{#each scripts}} 
    <script src="{{script}}"></script> 
{{/each}}