Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why use CakePHP's JsHelper?

I'm just starting with CakePHP and was wondering if someone could explain the true benefit of using its JsHelper over coding regular static jQuery and JS. So far, I don't really see how the helper would make creating scripts easier or faster.

like image 659
Dmitriy Smirnov Avatar asked Feb 29 '12 08:02

Dmitriy Smirnov


1 Answers

for the same reason I wrote my GoogleMaps Helper ;) the basic idea is that you can use the same language (php in this case) as the rest of the application and you can pass in any php option arrays and arrays holding data values and the helper is supposed to cake care of it.

it is similar to cakephp as a wrapper for php. it wraps your code and can help keep it dry.

don't get my wrong - i never ever used the js/ajax helper myself. but I can understand why some want to chose it over writing JS themselves. in some cases the output can even be more "correct" (if you don't know about the potential problems). for example the IE bug: if you output {} options yourself and forget to remove the last , it will not run in IE6 etc. that can't happen with the helpers as wrapper - at least it shoudnt ;)

so with the helper it either doesnt run at all or runs as a team of skilled developers designed it to work. especially for not so skilled developers this is usually a win-win situation: fast and more reliable. you can always start to switch to manual stuff later on (if you see the actual JS output and start to understand it).

also - when any of the js methods need to change for some reason your way of using the helper usually doesn't. if you don't use the abstraction you might find yourself in the need to manually adjust all occurrences.

like image 61
mark Avatar answered Oct 05 '22 23:10

mark