【问题标题】:How does Rails Magic work with connecting the right js files to the right .html.erbRails Magic 如何将正确的 js 文件连接到正确的 .html.erb
【发布时间】:2019-03-20 18:46:37
【问题描述】:

我有一个名为 .js 的文件:

app/assets/javascripts/generics/directory/edit_person.js

application.js 中不包含该内容,因为没有\require_tree,并且查看浏览器中的网络选项卡,我已确认 edit_person.js 正在单独提供服务。

正在渲染的erb 被命名为:

app/views/company_area/directory/edit_person.html.erb

我在这里没有看到任何引用 edit_person.js 的脚本标签,Rails 有什么神奇之处吗?

【问题讨论】:

  • 我认为您可能在谈论控制器特定资产 - guides.rubyonrails.org/…
  • 确保没有从应用程序/布局视图文件中调用 js。

标签: javascript ruby-on-rails asset-pipeline erb


【解决方案1】:

您必须向我们展示相关代码。

Rails 应用程序通常会在以下三种情况之一中使用 JS:

  1. 在您的 html 中指定了一个 JS 文件。这包括布局文件中的 application.js。
  2. 提出了一个 JS 请求,您正在响应该 JS。示例:js 文件 edit_person.js 存在于与控制器操作edit_person 对应的视图文件夹中,并且客户端向该操作发出 .js 请求
  3. Webpacker 配置为在资产管道旁边处理 JS。 [1]

如果这些都不适用于您,那么您将不会在页面上看到您的 JS 加载。知道了这一点,您需要检查您的布局、application.js 和控制器操作(响应)。

[1] Webpacker 不太可能提供这些文件,因为它们位于您的目录中,但为了准确起见,值得注意。

【讨论】:

    【解决方案2】:

    这是您编写的应用程序吗?如果没有,我会检查任何布局文件(特别是:views/layouts/application.html.erb 或 views/layouts/persons.html.erb 如果可用)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-08-12
      • 1970-01-01
      • 1970-01-01
      • 2013-08-14
      • 1970-01-01
      • 2020-01-04
      • 2014-11-20
      相关资源
      最近更新 更多