Übergeben Sie Parameter mit Python Flask in externem Javascript

8

Ich benutze Python Flask für meine Website und übergebe verschiedene Parameter an Javascript. Das ist mein Code:

%Vor%

Auf diese Weise funktioniert es problemlos. Das Beispiel ist ein eigenes Beispiel. Aber wenn ich das Skript in einer externen Datei haben will und es so nennen:

%Vor%

Und die Datei myjs.js ist console.log({{param1}}) , dann funktioniert es nicht. Gibt es also eine Möglichkeit, Parameter in externen Javascript-Dateien mit Python Flask zu übergeben?

    
Tasos 13.01.2015, 08:08
quelle

2 Antworten

12

Wenn Sie eine Datei mit Jinja rendern möchten, müssen Sie render_template aufrufen und die gewünschten Werte übergeben. Nur das direkte Verknüpfen mit einer statischen Datei macht das offensichtlich nicht. Eine Lösung besteht darin, Jinjas include -Block zu verwenden. Dies setzt voraus, dass sich "myjs.js" im Ordner "templates / js" befindet und es in die gerenderte Vorlage aufnimmt, wobei der gesamte Vorlagenkontext an die enthaltene Vorlage übergeben wird.

%Vor%

Bei der besseren Lösung müssen Sie die js nicht bei jeder Anfrage rendern und stattdessen Parameter aus Ihrer Vorlage an js-Funktionen übergeben.

%Vor%     
davidism 13.01.2015, 15:56
quelle
0

Ich habe einen anderen Weg benutzt, um eine Javascript-Datei zu laden, die in der HTML-Seite angegeben ist:

Zuerst definiere ich einige Variablen in <head></head> -Tags, und so rufe ich meine Javascript-Datei auf:

%Vor%

...

Dies ist mein Javascript-Dateiinhalt:       $ (Dokument) .ready (Funktion () {

%Vor%

Dieser Ansatz funktioniert für mich.

    
Silas Santiago 17.10.2016 23:49
quelle

Tags und Links