[TYPO3-german] gesucht: Viewhelper um Fluidvariablen in Inline-JavaScript einbauen zu können

Stephan Schuler Stephan.Schuler at netlogix.de
Thu Feb 9 13:10:38 CET 2017


Hallo zusammen.

Matthias, Du bist am Problem vorbei. Die Anforderung ist nicht, Inline-JS in eine Datei zu überführen.
Das Problem ist, dass der gegebene Beispielcode entweder kein gültiges Fluid ist oder aber der Fluid-Parser damit so seine Schwierigkeiten hat. Je nach Betrachtungsweise. Und in dieser Hinsicht spielt es keine Rolle, ob der Inline-JS-Code dynamisch zur Laufzeit in Dateien gepackt wird oder im HTML-Output steht. In beiden Fällen läuft er entweder durch den Fluid-Parser und macht Probleme oder er läuft nicht durch den Fluid-Parser und hat dann leider auch keine Variablen.

Einerseits bin ich der Überzeugung, dass Inline-JS grundsätzlich wegoptimiert gehört. Die Auslagerung in Dateien – statische, nicht zur Laufzeit erzeugte – erlaubt dem Browser dann sinnvolles Caching und spätestens beim zweiten Aufruf einer Seite mit identischem Code hat sich die statische Datei gegenüber dem Inline-JS sowohl was den Traffic als auch die Latenz betrifft bezahlt gemacht. Hier statische Dateien zu nehmen und das nicht zur Laufzeit zu machen ist wichtig, damit sich die Datei nicht spontan ändert (mtime und content) und immer exakt die gleiche Datei auf allen Seiten eingebunden wird. Nur so muss der Browser die Datei nicht bei jedem Seitenrequest erneut vom Server holen. Dynamisch beim Seitenaufbau JS-Dateien zu produzieren dern Inhalt sich aber von Seite zu Seite unterscheidet sorgt dafür, dass der Browser bei jedem Seitenrequest eine andere Datei braucht, und dann ist gegenüber dem Inline-JS nichts mehr gewonnen.

Anderseits könnte man vielleicht mit einer Kombination aus RawViewHelper und ReplaceViewHelper arbeiten. Der RawViewHelper soll dafür sorgen, dass das JS überhaupt nicht von Fluid beachtet wird sondern als Zeichenkette behandelt. Und der ReplaceViewHelper drum herum soll dann einzelne ausgewählte Platzhalter ersetzen. Natürlich beschränkt das den Inhalt des JS-Codes auf pure Platzhalter, die Verwendung von ViewHelpern (ich denke insbesondere an if oder switch/case) ist dann nicht möglich. Aber das muss es ja vielleicht auch gar nicht.

Beste Grüße,

Am 09.02.17, 12:41 schrieb "typo3-german-bounces at lists.typo3.org im Auftrag von Matthias Eberlein" <typo3-german-bounces at lists.typo3.org im Auftrag von skydivematy at gmail.com>:

    Hier der Link zum viewHelper

    https://github.com/mhirdes/go_maps_ext/blob/master/Classes/ViewHelpers/ScriptViewHelper.php

Stephan Schuler
Web-Entwickler | netlogix Web Solutions

Telefon: +49 (911) 539909 - 0
E-Mail: Stephan.Schuler at netlogix.de
Web: websolutions.netlogix.de



----------------------------
Neu: Wir sind Amazon Web Services Partner. Mehr erfahren:
https://websolutions.netlogix.de/technologie/amazon-web-services-aws
----------------------------




netlogix GmbH & Co. KG
IT-Services | IT-Training | Web Solutions
Neuwieder Straße 10 | 90411 Nürnberg
Telefon: +49 (911) 539909 - 0 | Fax: +49 (911) 539909 - 99
E-Mail: info at netlogix.de | Web: http://www.netlogix.de

netlogix GmbH & Co. KG ist eingetragen am Amtsgericht Nürnberg (HRA 13338)
Persönlich haftende Gesellschafterin: netlogix Verwaltungs GmbH (HRB 20634)
Umsatzsteuer-Identifikationsnummer: DE 233472254
Geschäftsführer: Matthias Schmidt



_______________________________________________
    TYPO3-german mailing list
    TYPO3-german at lists.typo3.org
    http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german




More information about the TYPO3-german mailing list