【问题标题】:RubyMine JavaScript "cannot resolve directory"RubyMine JavaScript“无法解析目录”
【发布时间】:2015-11-01 21:40:27
【问题描述】:

对不起,如果这是一个简单的问题,我对 Ruby 非常陌生。

我正在尝试为我的网站使用模板。我将所有文件复制到正确的文件夹中。但是,当我运行我的网站时,它没有使用任何 javascript 文件。

这是html文件中的问题。

<script src="assets/js/jquery.min.js"></script>
<script src="assets/js/jquery.dropotron.min.js"></script>
<script src="assets/js/jquery.scrolly.min.js"></script>
<script src="assets/js/jquery.onvisible.min.js"></script>
<script src="assets/js/skel.min.js"></script>
<script src="assets/js/util.js"></script>
<!--[if lte IE 8]><script src="assets/js/ie/respond.min.js"></script><!     [endif]-->
<script src="assets/js/main.js"></script>

所有这些行都显示“无法解析文件”。 我确信需要 tree 。在 application.js 中,我也尝试复制路径和引用并将其粘贴在引号之间。我也试过用

<%= javascript_include_tag "jquery.min" %>

这就是我的 html 头部的样子

<head>

<title>HSA</title>
<%= stylesheet_link_tag    'application', media: 'all', 'data-turbolinks-track' => true %>
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
<%= csrf_meta_tags %>

</head>

我的 main.css 中也有类似的问题

background-image: url("../../images/header.jpg");

【问题讨论】:

    标签: javascript html directory rubymine resolve


    【解决方案1】:

    这看起来像是一些asset pipeline 问题。我建议您调整对.js 文件的直接引用,并改用代码资产调用中的.jpg

    要包含 jquery 库,最好使用 jquery-rails gem。如果您没有在 Gemfile 中更改它,它应该已经存在了。

    您的 application.js 文件中需要此行:

    //= require jquery
    

    因为您似乎正在使用/js 子文件夹,所以您必须告诉rails 查看该文件夹。导航到文件夹your-app/config/initializers 并编辑文件assets.rb。您应该在此处添加此行,以便每个编译器了解您的自定义文件夹:

    Rails.application.config.assets.precompile += ['js/*']
    

    要检索 css 文件中的图片,您应该更改此行:

    background-image: url("../../images/header.jpg");
    

    到这里:

    background-image: url("<%= asset_path 'header.jpg' %>");
    

    并将您的 .css 文件重命名为 .css.erb

    祝你好运!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-12
      相关资源
      最近更新 更多