Warum benutzt du den JsHelper von CakePHP?

8

Ich beginne gerade mit CakePHP und fragte mich, ob jemand den wahren Nutzen erklären könnte, seinen JsHelper gegenüber dem Kodieren von statischem jQuery und JS zu verwenden. Bis jetzt sehe ich nicht wirklich, wie der Helfer das Erstellen von Skripten einfacher oder schneller machen würde.

    
Dmitriy Smirnov 29.02.2012, 08:18
quelle

3 Antworten

4

aus dem gleichen Grund, aus dem ich meinen GoogleMaps Helper geschrieben habe;) Die Grundidee ist, dass Sie die gleiche Sprache (PHP in diesem Fall) wie der Rest der Anwendung verwenden können und Sie können alle PHP-Option-Arrays und Arrays mit Datenwerten übergeben und der Helfer soll sich darum kümmern.

ist ähnlich wie cakephp als Wrapper für PHP. es wickelt Ihren Code ein und kann helfen, ihn trocken zu halten.

versteht mich nicht falsch - ich habe den js / ajax-Helfer nie selbst benutzt. aber ich kann verstehen, warum einige es wählen wollen, anstatt JS selbst zu schreiben. In einigen Fällen kann die Ausgabe sogar "korrekter" sein (wenn Sie die potenziellen Probleme nicht kennen). zum Beispiel der IE-Fehler: Wenn Sie selbst {} -Optionen ausgeben und vergessen, das letzte zu entfernen, wird es nicht in IE6 usw. laufen, was nicht mit den Helfern als Wrapper passieren kann - zumindest sollte es nicht funktionieren;)

also mit dem Helfer es entweder gar nicht läuft oder läuft wie ein Team von erfahrenen Entwicklern es entworfen, um zu arbeiten. Vor allem für nicht so fähige Entwickler ist dies normalerweise eine Win-Win-Situation: schnell und zuverlässiger. Sie können später immer wieder auf manuelle Dateien wechseln (wenn Sie die tatsächliche JS-Ausgabe sehen und anfangen, sie zu verstehen).

auch - wenn eine der js-Methoden aus irgendeinem Grund geändert werden muss, ist dies normalerweise nicht der Fall. Wenn Sie die Abstraktion nicht verwenden, müssen Sie möglicherweise alle Vorkommen manuell anpassen.

    
mark 29.02.2012, 09:15
quelle
0

Wie bei jedem Helper ist der JsHelper eine Möglichkeit, Dinge vereinfacht in Ihre Ansicht zu packen. Aber "rohen" JS / jQuery-Code in Ihre Ansicht einzufügen würde gut funktionieren, wenn Sie beispielsweise $this->Html->scriptBlock verwenden.

Es gibt keinen wirklichen Vorteil, an den ich denken könnte, als wenn jQuery jemals die Syntax einer bestimmten Funktion ändern würde. Sie müssten Ihren Code nicht anpassen, wenn Sie den JsHelper verwenden, da der Kern dann das Update benötigt implementiert, anstatt dass Sie Ihren gesamten "rohen" JS-Code in allen Ihren Ansichten ändern müssen.

    
Oldskool 29.02.2012 08:53
quelle
0

JsHelper ist wie ein Gerüst: Es ist sehr praktisch, wenn man nur das Grundlegende und nur das Grundlegende braucht. Das heißt, eine Seitennumerierung oder einige Elemente ajaxieren.

Aber darüber hinaus ist es besser, eigenen Code zu schreiben, weil Sie Dinge benötigen, wie Sie sie brauchen, und nicht wie der Helfer standardmäßig ausgerichtet ist.

Wie alles andere in einem Framework: Es ist ein Werkzeug. Überprüfen Sie Ihre Anforderungen und verwenden Sie die besten verfügbaren Tools.

    
sibidiba 29.02.2012 09:15
quelle

Tags und Links