如果你搜索grails插件网站,你会发现很多JQuery和其他JavaScript库的插件。其中大多数通过Grails TagLibs公开给定的JavaScript库功能。这真的是一个优势,如果是这样,为什么?
答案 0 :(得分:7)
要回答您关于使用TagLibs公开JavaScript功能是否有优势的实际问题,我的回答通常是否定的。但你很可能会得到许多人不同意我的意见。特别是那些花时间创建这些TagLib的人。
我发现直接处理JavaScript要比通过taglib更容易。我可能会考虑的唯一例外是远程taglibs的grails,但我个人仍然不使用它们。
答案 1 :(得分:2)
就个人而言,我更喜欢使用JavaScript taglib而不是普通的JavaScript。例如,如果您想创建一个提交AJAX请求并使用响应更新DIV的链接,我发现它更容易编写
<g:remoteLink action="show" id="1" update="myDiv"
onLoading="showSpinner();">Click Me</g:remoteLink>
比相应的JavaScript。
如果您安装了JQuery插件并决定要用Prototype替换JQuery(例如),那么一旦您使用Prototype插件替换JQuery插件,上面的标签就会继续工作。如果你只是将.js文件复制到web-app/js
(而不是使用插件),这是不可能的。
最终,如果你使用JS插件,你的应用程序“知道”哪些JS库正在使用。其他插件(例如resources)可以使用此信息。
答案 2 :(得分:0)
jQuery只是javascript库的扩展。它提供了Javascript不提供的 no new 功能。但是,在做诸如(但不限于)
之类的事情时,它会让你的生活变得更加轻松当你在这里或那里做一些简单小事时,没有必要。但通常情况下,当您执行一个大项目时,包含jQuery(31 KB和1个HTTP请求)并将其用于您的优势是有意义的。