gpt4 book ai didi

javascript - Rails - jQuery 不适用于 Heroku 的生产环境

转载 作者:行者123 更新时间:2023-11-30 00:32:14 25 4
gpt4 key购买 nike

我正在使用 Heroku 部署一个网站,尽管在 jQuery 上线时真的很难触发它。在本地,一切正常。

我玩了一把,但没有找到任何解决方案 - 它全部加载到 Assets 管道中,在实时页面上显示为源(尽管没有工作),我已经尝试了所有的解决方案在网上找到。

我已经执行了 rake assets:precompile,有 config.assets.compile = true 并且认为这可能是 Turbolinks 造成的问题,安装了 jquery-turbolinks gem 。

每次更改后,我都认为我会运行它,尽管还没有任何影响该网站的行为。这是一些代码:

gem 文件

...
gem 'bootstrap-will_paginate'
gem 'bootstrap-sass'
# Use jquery as the JavaScript library
gem 'jquery-rails'
gem 'jquery-ui-rails'
gem 'jquery-turbolinks'
# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
gem 'turbolinks'
...

应用程序.js

...
//= require bootstrap
//= require jquery
//= require jquery.turbolinks
//= require jquery_ujs
//= require jquery-ui
//= require turbolinks
//= require_tree .
...

应用程序.html.erb

<head>
<link href='http://fonts.googleapis.com/css?family=Slabo+27px' rel='stylesheet' type='text/css'>
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
<%= csrf_meta_tags %>
</head>

首页.js

var validBox = function(x, y){
...
});
};

var main = function(){
$('.toggle').click(function(){
$('.about-me').toggle();
});
//Carosel
$('.arrow-next').click(function(){
...
});
$('.arrow-prev').click(function(){
...
});
//Comments
$('.btn').click(function() {
...
});
$('.status-box').keyup(validBox('.status-box', '.name-box'));
$('.name-box').keyup(validBox('.name-box', '.status-box'));
$('.btn').addClass('disabled');
}

$(document).ready(main);

$(document).ready(main); 行有问题吗?我有一种感觉,我在某处读到 jQuery 并不总是响应,因为在使用 Turbolinks 时页面没有从头开始加载/“准备好”,尽管我认为添加相关的 Gem 可以解决这个问题。我也试过 $(document).on('ready', 'page:change')(main); 在其他点运行该函数,但无济于事。

或者,我似乎记得有一些命令行功能可以更好地确保 Assets 在实时运行时运行,但找不到任何相关内容。

任何帮助将不胜感激,因为我对这个感到困惑。我对此很陌生,如果其中有任何明显的业余错误,我深表歉意(尽管这可能意味着一个简单的解决方案!)。

提前致谢,史蒂夫。

最佳答案

就我而言,我在这里找到了答案:

Bootstrap won't detect jQuery 1.11.0 - Uncaught Error: Bootstrap's JavaScript requires jQuery

Java 控制台抛出那里提到的错误,在天知道多少次搜索之后,只需更改 js 文件的加载顺序就会有所不同。

在 jQuery 之后 启动,一切都完美!!

//= require jquery
//= require jquery_ujs
//= require bootstrap
//= require turbolinks
//= require_tree .

关于javascript - Rails - jQuery 不适用于 Heroku 的生产环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29017337/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com