【问题标题】:Rails gem with javascript dependency具有 javascript 依赖项的 Rails gem
【发布时间】:2018-03-24 08:32:44
【问题描述】:

我正在编写一个需要 angular 的 rails gem,所以我将它添加到我的 gem 的依赖项中:

s.add_dependency "angularjs-rails", "~> 1.6.2"

现在,我应该如何包含 angular ?我尝试将它直接添加到我的 gem 的主 js 脚本中,但 sprockets 失败并出现这种错误:

couldn't find file 'angular' with type 'application/javascript'
Checked in these paths:
  ...
  /Users/mac/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/bundler/gems/grid_builder-rails-be353dff709f/app/assets/javascripts
  /Users/mac/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/bundler/gems/grid_builder-rails-be353dff709f/app/assets/stylesheets
  ...

当我尝试在使用我的 gem 的应用程序中包含 angular 时,在包含我的 gem 的脚本之前,错误是完全相同的......

所以我应该只指定我的 gem 需要在应用程序 Gemfile 中添加 angularjs-rails,还是有更好的方法来做到这一点?

【问题讨论】:

  • 您需要在 gem 的模块文件中 require 'angularjs-rails'

标签: javascript ruby-on-rails ruby rubygems sprockets


【解决方案1】:

正如 Richard Peck 建议的那样,我在 gem 的模块文件中需要 angularjs-rails,一切都很顺利:

require 'angularjs-rails'

module GridBuilder
  module Rails
    require 'grid_builder/rails/engine'
    require 'grid_builder/rails/version'
    require 'grid_builder/rails/helper'
  end
end

在我 gem 的 js 脚本中:

//= require angular

谢谢你:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-06
    • 2023-03-31
    • 1970-01-01
    • 2017-11-07
    • 1970-01-01
    • 2011-05-23
    • 2013-09-04
    相关资源
    最近更新 更多