问题标签 [rails-assets]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
46 浏览

ruby-on-rails - 将 scss 文件添加到 rails-assets

我正在创建一个 bower 文件,然后将其添加到https://rails-assets.org/

我可以很好地提取文件,但是我无法引用该scss文件。该css文件可以很好地导入,但是因为它仅包含变量而变得无用。

像这样导入到rails中的application.scss:

鲍尔.json

0 投票
1 回答
1430 浏览

ruby-on-rails - Rails - Rails.root.join 部署后行为不端

我的 app/assets 目录中有 javascripts 和 stylesheets 目录,就像任何普通的 Rails 应用程序一样。

但是,我也希望有一个插件目录。

例子:

问题是,如果我使用

我会收到 404 错误,因为

不存在。然后,我注意到“插件”目录试图在 javascripts 中被访问。我认为这与“javascript_include_tag”有关。

经过一番研究,我意识到我必须将此行包含到 config/application.rb

它似乎奏效了。在 WEBRick 上,在开发上,它运行良好。


现在我成功地部署到服务器,预编译了资产,并认为我已经准备好了。

目录

被创建。“app/assets/javascripts”、“app/assets/stylesheets”和“app/assets/plugins”中的所有内容都被预编译为public/assets

什么有效

能够在一个视图中访问

什么没用

属于“插件”的文件。

被预编译为

但是当我跑

它试图访问

根据我的开发经验,正确的路径是:


因此,如您所见,在生产中我遇到了与未添加时相同的问题

到应用程序.rb

可能是什么问题呢?

0 投票
2 回答
974 浏览

ruby-on-rails - 如何在 react-rails 组件中从 rails-assets.org 调用 react-modal

我有一个在前端使用 react 的 rails 应用程序,但在向我的组件中添加其他 react 模块时遇到问题。我正在使用react-rails将 react 合并到我的 rails 应用程序中。我想将react-modal添加到组件中。我使用 rails-assets 将 react-modal 添加为 gem,但在组件中调用 react-modal 时遇到问题。我希望这将是一个与 React.DOM 类似的调用,但似乎并非如此。

由于链轮,我不能使用正常的 'require()' 语法,我想坚持使用 rails-assets 而不是 browserify/webpack 解决方案。

因此,为了清楚起见,我想在我的组件中显示模态,截至目前,我收到一个错误,提示“未定义模态”。谢谢你的帮助。

这是来自 rails-assets 的 gem:

应用程序.js

这是我的组件:

0 投票
1 回答
2631 浏览

ruby-on-rails - 为什么要在 rails 中使用 config.assets.prefix?

我试图弄清楚我是否应该config.assets.prefix在我的开发环境中使用。

当我使用 localhost 进行开发时,这样做有什么(不利)优势吗?当本地服务器本身没有缓存并且位于另一个域(生产域与本地主机)时,我看不到缺点吗?特别是对于在 CSS 和 Javascript 中硬编码一些路径,它们在开发时总是会返回 404。

我一直在使用config.assets.prefix = "/dev-assets"作为公关。推荐另一位不再与我们合作的开发人员。

这是一个其他人考虑过并持立场的问题吗?

0 投票
1 回答
290 浏览

ruby-on-rails-4 - Accessing javascript resource under a Rails Engine throws net::ERR_CONNECTION_RESET

I have a Rails 4.2.1 application with multiple engines under it. The application has been hosted in production with Apache2 and Passenger and was working fine till a few weeks back. I am now facing a strange problem and unable to load assets under one particular engine and get the error "Failed to load resource: net::ERR_CONNECTION_RESET" when trying to load javascript or other asset files under a particular engine. The application structure is

  • Root
    • AssessmentTools (app->assets->javascript->assessment_tools->angular.js)
    • QuestionBankTools (app->assets->javascript->question_bank_tools->angular.js)

All seems to work fine when loading resources under AssessmentTools (http:///assets/assessment_tools/angular.js), but fails for QuestionBankTools (http:///assets/question_bank_tools/angular.js).

Also, everything seems to work fine on localhost and even in a VM that i hosted on my development machine (with app running behind Apache2 and Passenger), but the problem appears when i host it on server behind a proper a domain.

I have tried cleaning up the server and re-installing the application but without success. I am not able to figure out what could have changed in the past weeks to create this issue.

0 投票
2 回答
418 浏览

ruby-on-rails - Rails 资产应用程序/资产和供应商/资产

我在一篇文章中阅读了以下内容

你所有的自定义 Javascript、样式表和图像都应该放在 app/assets/.

您使用的所有第三方代码(例如 jQuery、backbone.js 等)都应该放在 vendor/assets/ 目录中

但我在文章中没有找到——为什么这么推荐,有什么理由吗?

0 投票
0 回答
64 浏览

ruby-on-rails - Rails 资产,客户端请求过期资产

我在 Heroku 上部署了一个 rails (4.1.5) 应用程序,并使用 NewRelic 进行监控。在过去的 24 小时内,该网站从 NewRelic 上的错误率 < 3% 变成了大约 30% 的错误率,所有错误都与对过期 javascript 和 css 资产的请求有关。我已经有一个多月没有部署到该站点了,因此资产不应该发生变化。

我的问题有两个;
首先,为什么我会突然收到大量对过期资产的请求?
其次,它们是一种处理过期资产请求并将其重定向到当前资产的方法吗?

0 投票
1 回答
2709 浏览

ruby-on-rails - 如何在我的 Rails 项目中使用 Rails Selectize?

我收到错误

应用程序.js:

0 投票
1 回答
150 浏览

javascript - 阻止 rails 寻找特定于控制器的 JS 和 CSS

我正在使用 Rails 3.2(我知道旧且不受支持)。这是旧版应用程序升级,我们以前没有控制器特定js/css文件,我们为它们提供了不同的结构。

问题是资产管道会MyController.js在我加载MyController或更糟的时候寻找:当我加载一个方法时,它会为该视图寻找特定的 JS 或 CSS。

由于我在production.rb:中有此设置,config.assets.compile = false因此如果未编译某些内容,它将不会回退到资产管道。这会导致device/passwords.js isn't precompiled令人沮丧的错误,因为我不想要/不需要单独的js文件。

Rails 3.2 自动需要这些控制器特定的 js 和 ,我的代码中没有任何我知道并且我已经检查过的东西:<%= javascript_include_tag params[:controller] %>这在我的代码中也不存在。

我希望它停止这样做,这样我就不必js为我不会使用的每个操作随意创建一个文件。

在rails 3.2中这可能吗?

0 投票
1 回答
50 浏览

ruby-on-rails - 成功运行 bundle install 后 Gem 不可用

在我的 RoR 项目中,我想使用 DataTables Gem:

https://rails-assets.org/#/components/DataTables

我将具有正确 Source 的 Gem 放入我的 Gem 文件并运行bundle install.

它以绿色输出:

最后:

没有出现错误。

但是当我开始运行时,rails s我得到:

有什么帮助吗?

我正在使用 XOS El Capitan。我听说这可能与安全设置有关?我现在正在寻找没有成功的日子。