我已经在Ruby on Rails上编程了一段时间,并且能够在我的javascript代码中轻松地从我的控制器访问数据,作为初学者,我遇到了Gon Gem。它很简单地解决了这个问题,但对于RoR初学者来说有点神秘,说实话。
深入了解gem的源代码,我现在明白它是如何工作的:
您要求gon
传递给JS的变量由gem跟踪并插入<script />
标记所呈现的视图上的erb
标记
<%= Gon::Base.render_data %>
使得gon
对象在您的JS中可用,因为它将其作为window
属性注入。
我的问题是,这种做法有多好?坦率地说,将JS代码动态注入站点只是为了从浏览器中的服务器访问一些数据似乎有点可疑。
是不是更好的做法或