如何在rails ujs中使用实例变量?

发布于 2025-01-08 03:35:38 字数 618 浏览 0 评论 0原文

这就是我之前在 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

静待花开 2025-01-15 03:35:38

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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文