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

Dr. Dieter Porth typo3 at mobger.de
Thu Feb 9 21:37:59 CET 2017


@Hallo Stefan

Das mit den Klassen war nur ein einfache Beispiel. Selbst im dynamischen 
Fall ist das direkte Einsetzen in Styles sinnvoller.


@Hallo Matthias,

danke für den Tipp. Aber wie Stephan nachfolgen schrieb, möchte ich 
etwas in das JavaScript hineinparsen.


@Hallo Stephan,

danke für die Richtig-Stellung. Genau das nicht funktionierende Parsen 
im Fluid ist mein Problem. Deinen Glaubenssatz, dass inline-JavaScript 
grundsätzlich in statische Dateien gehört, würde ich im Grundsatz sofort 
mit unterschreDiben. Das Paradigma von der anzustrebenden 
Wiederverwendbarkeit von Code ist wichtig.

Aber zu jedem Glaubenssatz gibt es Ausnahmen; nämlich immer dann, wenn 
dessen Prämisse nicht gegeben ist. Bei automatisierten Funktionstest ist 
die Prämisse zum Beispiel nicht gegeben.
Wenn ich die Funktionalität des JavaScripts der Website im Live-Betrieb 
mit Hilfe von automatisierten Tests via Jasmine absichern möchte, muss 
ich die javaScript-Tests dynamisch mit echten Daten dynamisch 
parametrisieren können. Unter anderem dafür brauche ich den Viewhelper 
und Inline-Javascript-Code.

Ich werde ihn wohl selbst programmieren müssen. *Grummel* .

Mit besten Grüßen

     Dieter

P.S. Die Raw-&Replace-Viewhelper-Variante finde ich unscharmant, weil 
ich dann auf Fluidvariablen beschränkt bin. Was mache ich, wenn ich 
manche TestDaten per cObject-Viewhelper bestimmen möchte?



Am 09.02.2017 um 13:10 schrieb Stephan Schuler:
> 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
>
>
> _______________________________________________
> 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