Rails 5中没有提供/ assets / images中的Rails 5 ui-icons.png文件?

问题描述 投票:0回答:1

使用Rails 5与AngularJS和Bootstrap。

我有一个指令,生成一个使用我从ui-icons_444444_25x240.png获得的图标的表单。

此文件位于app / assets / images中,但系统似乎无法找到它。我在控制台中收到以下错误:

angular-animate.self-4159531cc5685b66e6cdfd76c35d196124b4dde2fa449ceca973e3af2b070f66.js?body=1:766 GET http://localhost:3000/assets/images/ui-icons_444444_256x240.png 404 (Not Found)

这是寻找图标的指令:

function templateConstantsModal(projectName) {
let buttonCaption = "OK";
return `<div class="modal-header"> 
  <h5 class="modal-title bold" id="modal-title">Budget Constants for ${projectName}</h5>
  </div>
  <div class="modal-body" id="modal-body">

      <p class="italic" ng-if="$ctrl.list.length == 0">Click <strong>Add New</strong> to add a budget constant</p>

     <div class="container col-sm-12" ng-if="$ctrl.list.length>0">
       <div class="row bold">
         <div class="col-sm-5">Constant</div>
         <div class="col-sm-5">Value</div>
         <div class="col-sm-2"></div>
       </div>

       <div class="row"  ng-repeat="obj in $ctrl.list">
         <div class="col-sm-5">{{obj.name}}</div>
         <div class="col-sm-4">{{obj.value}}</div>
         <div class="col-sm-3"> 
         <span class="ui-icon ui-icon-pencil" ng-click=$ctrl.edit(obj.name)></span>
           <span class="ui-icon ui-icon-circle-close" ng-click=$ctrl.delete(obj.name) ></span>
          </div>
       </div>
     </div>

  </div>
  <div class="center">__________________________</div>
  <div class = "modal-footer" id="modal-footer">

      <button class="btn btn-primary" type="button" ng-click="$ctrl.addNew()">Add new</button>
      <button class="btn btn-warning" type="button" ng-click="$ctrl.cancel()">Cancel</button>
  </div>`;

}

Chrome开发者工具的网络面板似乎显示了我本地计算机上找不到的文件,但显然存在。我把这个.png文件的图像文件夹的副本放在其他目录中(与脚本,公共/图像等相同的目录,但它似乎没有在那里看。

我在谷歌开发工具的网络面板中看到的唯一奇怪的事情是,由于某种原因,此.png文件的文件名称被标记为“text / html”,尽管文件名本身是正确的,并且文件具有正确的图像内容。

Developer Pane

继承了根目录下的文件树:

enter image description here

使用图标的代码:

      <div class="col-sm-3"> 
         <span class="ui-icon u**i-icon-pencil"** ng-click=$ctrl.edit(obj.name)></span>
           <span class="ui-icon ui-icon-circle-close" ng-click=$ctrl.delete(obj.name) ></span>
          </div>
       </div>
     </div>
angularjs ruby-on-rails-5 angular-ui-bootstrap
1个回答
0
投票

我不确定这是它应该完成的方式,但我能够通过以下方法解决这个问题:a)创建子目录资产/样式表/图像并将文件ui-icons_444444_246x240.png放入其中,然后修改应用程序。 css包含该指令

*= require_directory ./images

看起来像一种黑客,但至少它是有效的。

如果有人知道应该怎么做,请告知。

© www.soinside.com 2019 - 2024. All rights reserved.