Javascript / jQuery / Coffeescript 在 Ruby on Rails 中的作用是啥?

Posted

技术标签:

【中文标题】Javascript / jQuery / Coffeescript 在 Ruby on Rails 中的作用是啥?【英文标题】:What's the role of Javascript / jQuery / Coffeescript in Ruby on Rails?Javascript / jQuery / Coffeescript 在 Ruby on Rails 中的作用是什么? 【发布时间】:2011-12-13 00:41:02 【问题描述】:

过去几个月我一直在学习 Ruby,尤其是 Rails 框架,现在正准备深入研究 javascript。我知道任何优秀/现代的 Rails 应用程序都会在其代码中包含 javascript。我也知道 Javascript/Jquery/Coffescript 有助于为 Web 应用程序添加一些交互性、样式和功能。

我的问题是使用 JS(或 Jquery/Coffescript 等)与 Ruby/Rails 解决的标准问题/功能集是什么?

【问题讨论】:

JavaScript 是客户端; Ruby/Rails 是服务器端的。如果您不完全清楚 jQuery(和其他 JavaScript 库)到底是什么,我建议您阅读我写的 this article。 谢谢,很棒的文章!... 我知道 rails 是服务器端,JS 是客户端站点,但是在应用程序中将 JS 用于 vs Rails 的典型操作有哪些示例? 【参考方案1】:

Javascript 是客户端,可以在页面加载后对其进行操作。它更多地是关于与页面的交互,而 rails 是应用程序的后端。 Javascript 存在于大多数网站中,不管是否有 ruby​​/rails。

【讨论】:

【参考方案2】:

你会用 javascript 完成的一些任务:

无需用户重新加载整个页面即可更新网页的某些部分。 第 3 方来源,例如 - 我在一个网站上使用了谷歌地图,并为此使用了几乎所有的 javascript。 弹出窗口、用户交互 显示视频、交互式图像。

你会用 ruby​​/rails 完成的一些任务:

所有服务器端的东西,比如从模型中获取数据。 了解您的客户端发送到您的应用程序的所有数据。 在将数据发送到浏览器之前对其进行处理。

【讨论】:

【参考方案3】:

使用 Rails 来:

使用 MVC(模型、视图、控制器)代码构建可扩展应用程序。 管理数据(CRUD - 创建、读取、更新、删除)。 管理安全(访问)和身份验证(身份)。 随着时间的推移管理状态。 将 REST 应用于标准操作。 为验证(数据库作为后端验证器)应用“中间层”。 管理AJAX通信和处理的后端部分。 使用易于理解的代码以 TDD/BDD 敏捷方式构建应用程序。 构建 API 以进行通信。 提供全栈应用服务器

使用 Javascript 和 jQuery 等库:

改进了用户交互 - 滑块、高光、发光、颜色变化等。 改进的用户反馈 - 为验证提供即时反馈的“前线”。 改进了页面加载速度 - 更少的页面加载和更少的用户体验中断。 通过效果改善用户体验。 - 过渡、淡入淡出等。 呈现和管理交互式内容,例如地图、视频、声音。 特定于管理 DOM 的任务 - html、CSS 和浏览器事件。 通过 AJAX 进行通信的前端部分。 使事物在不同的浏览器和浏览器版本中看起来和工作相似。 用于滑块、图像淡入淡出、表单、布局、工具提示等的预置工具。 预构建的迷你应用,可应用于任何数据。 Isotope 就是一个惊人的例子!

【讨论】:

我只是想补充一点,因为 Rails(后端)为您提供了一个 MVC 框架来组织您的代码,您可能需要研究 Javascript 框架来组织您的前端工作。 Backbone 是一个 MVC javascript 框架,而 KnockoutJS 是一个 MVVM 框架。任何一个都可以让您更轻松地管理您的 javascript 文件,并且两者都可以与 JQuery 结合使用。

以上是关于Javascript / jQuery / Coffeescript 在 Ruby on Rails 中的作用是啥?的主要内容,如果未能解决你的问题,请参考以下文章

从 Mysql 迁移到 Cassandra

无法在类中使用方法

用PHP创建短ID,比如Youtube或TinyURL

如何在 rails3.1 中使用 ajax?

JavaScript之jQuery-1 jQuery概述jQuery的编程步骤jQuery对象

如何不在 Python 复数中打印 j?