标签: gon

Ruby on Rails Gon Gem vs. cookies或常规AJAX请求

我已经在Ruby on Rails上编程了一段时间,并且能够在我的javascript代码中轻松地从我的控制器访问数据,作为初学者,我遇到了Gon Gem.它很简单地解决了这个问题,但对于RoR初学者来说有点神秘,说实话.

深入了解gem的源代码,我现在了解它是如何工作的:您要求gon传递给JS 的变量由gem跟踪并插入到由<script />标记呈现的视图上的erb标记中

<%= Gon::Base.render_data %>
Run Code Online (Sandbox Code Playgroud)

这使得gon对象可以在JS中使用,因为它将它作为window属性注入.

我的问题是,这种做法有多好?坦率地说,将JS代码动态注入站点只是为了从浏览器中的服务器访问一些数据似乎有点可疑.这两种方式都不是更好的做法

  • 只是通过RoR服务器端的端点和JS前端的AJAX调用来获取数据?

要么

  • 在RoR控制器上的相应操作期间在cookie上设置所需的数据,并从JS中读取它?

javascript cookies ajax ruby-on-rails gon

7
推荐指数
1
解决办法
311
查看次数

标签 统计

ajax ×1

cookies ×1

gon ×1

javascript ×1

ruby-on-rails ×1