如何在rails ujs中使用实例变量?
这就是我之前在 html.erb 中所做的:
my markup
<script type="text/javascript">
var somevalueFromInstance = "<%= @value_from_instance %>";
// code directly using the someValueFromInstance
</script>
markup continues..
大多数情况下,我会将 script 标记放在 content_for 块中。
现在,当我想要做到这一点时,我不能在 html.erb 中包含任何 script 标记。该脚本位于一个 javascript 文件中。但是我如何将@value_from_instance传输到javascript文件?
将其存储在数据属性中是执行此操作的唯一选择吗?
我还想在页面加载时执行此操作,而不是在 ajax 请求中执行此操作
This is what i used to do in html.erb earlier:
my markup
<script type="text/javascript">
var somevalueFromInstance = "<%= @value_from_instance %>";
// code directly using the someValueFromInstance
</script>
markup continues..
mostly i will place the script tag in a content_for block.
Now when i want to do this unobtrusive, i cannot have any script tags in the html.erb. The script lies in a javascript file. But how do i transport the @value_from_instance to the javascript file?
Is storing it in a data-attribute the only option to do this?
Also i want to do this on page load and not in an ajax request for this purpose
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
data-* 属性就是这样做的。这是定义参数的最简单方法,或者您可以直接在 HTML 的脚本标记中创建一些变量。
The data-* attribute is do to that. It's the must simplest way to define your args or you can create some variable in a script tag in your HTML directly.