![](/img/trans.png)
[英]Bootstrap Navbar Missing on Heroku Deploy (NodeJS, Angular2)
[英]bootstrap styles missing after deploy to Heroku
基于过去两天我一直在做的谷歌搜索,我加入了数百(如果不是数千)在部署到 Heroku 时丢失引导程序样式的人。就像其他人一样,引导程序样式在本地机器,但在已部署的 heroku 站点上不存在。 我很难过。 我正在使用 rails 4.2.4 和 ruby 2.2.3。 (如果有区别的话,我也在使用 RubyMine。我认为没有。我尝试使用“普通”git 和 sublime 进行部署,但没有任何区别。)这是我所做的:
我相信这就是我应该做的让它工作的全部。 如上所述,它在本地机器上运行良好。
我已经尝试了 web 上建议的许多解决方案,但都没有用。 很难说出哪些是适用的,因为这似乎已经存在好几年了(从 2012 年到现在,我的谷歌搜索返回了这样的问题和建议的解决方案)。 我确信其中一些解决方案不再适用(对于 Rails v4)。
像往常一样,任何帮助表示赞赏。
尝试从头开始一个项目,并让 Bootstrap 在生产中工作。 我使用 maxcdn 方法成功地做到了这一点。
这是我为包含 bootstrap maxcdn 所做的工作:
app/views/layouts/application.html.erb ,在<head>
标签的末尾:
<!-- BOOTSTRAP -->
<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css" rel="stylesheet">
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"> </script>
我只做了这个,没有别的。 即使在 Heroku 上的生产中,它也很有魅力。
我不必“尝试从头开始一个项目”。 只需添加
<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css" rel="stylesheet">
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"> </script>
对我有用。
我的解决方案是在您的 CLI 中运行此命令
rake assets:clobber rake assets:precompile RAILS_ENV=development git add . git commit -m "Precompile assets in preparation for deploying to Heroku." git push heroku master
对我来说就像一个魔术!
我今天遇到了这个问题。 对我有帮助的是检查节点和纱线的版本(当然,如果你使用它)。 指出我今天使用的主要堆栈是有意义的。
gemfile:
Rails 6.1.4, ruby '3.0.0', 'webpacker', '~> 5.0'
package.json:
"node": "15.14.0", "yarn": "1.22.15", "bootstrap": "4.5.0"
所以引导程序按预期用于开发而不是用于生产(heroku)
简而言之:区别在于开发和生产环境中节点和纱线的版本。 Heroku 如果你没有在 package.json 中设置它们,则使用默认版本。 对于我的案例 heroku 比我当地的要低一点。
我已将 json 的下一部分添加到 package.json 和 heroku 中,并在部署后对其进行设置。 就这样。
"engines": {
"node": "15.14.0",
"yarn": "1.22.15"
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.