我听说 RJS 中传递给客户端 js 代码而不是 json 或 html 的想法让很多人感到不安,因此他们避免使用 RJS。考虑到在没有 RJS 的 Rails 框架中使用 jquery 执行 ajax 的惯用方法到底是什么?有人可以指点我一个教程链接吗?
最佳答案
通过rails实现AJAX主要有两种方式:
第一个是使用 js.erb
文件、链接和表单中的 :remote => true
选项以及
respond_to do |format|
format.js
end
在 Controller 中。关于如何实现它有一个很好的解释here .
另一种方法是编写纯 JavaScript(您当然可以使用 JQuery 的帮助)将 AJAX 请求发送到服务器并在客户端处理它们。通过这种方法,Javascript 被写入应用程序 Assets 文件夹中的单独 JS 文件中。
根据我的经验,从长远来看,最好使用第二种方式,原因有以下三个:
它使您可以完全分离客户端和服务器端代码。一个程序员可以只处理代码的一个方面,这是一个很大的优势。
测试单独的 JS 文件比测试 js.erb 文件容易得多。
它可以更轻松地重用 JavaScript 代码,并在投入生产时将其打包以进行缩小等操作。
关于javascript - Rails 的 RJS 替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12359976/