JQuery 事件不适用于生产中的 heroku,但适用于开发中

2024-01-21

这似乎是一个常见问题,但我还没有找到适用于我的情况的解决方案。我在 bikes.js.coffee 中有一些 JQuery 在本地开发中可以正常工作。当我推送到 Heroku 时,bikes.js.coffee 中的脚本不会运行。浏览器的 javascript 控制台中没有错误。我正在使用 Rails 4.0。通过阅读周围的内容,我认为资产的编译方式存在一些错误,但我无法超越这一点。所有图像在制作中都显示良好。

bikes.js.咖啡:

ready = ->
  jQuery ($) ->

  # when the #make field changes
  $("#bike_make_id").change ->

    # make a POST call and replace the content
    make = $("select#bike_make_id :selected").val()
    make = "0"  if make is ""
    jQuery.get "/bikes/update_model_select/" + make, (data) ->
      $("#bikeModels").html data

    false

$(document).ready(ready)
$(document).on('page:load', ready)

应用程序.js

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

Gemfile

source 'https://rubygems.org'
ruby '1.9.3'
#ruby-gemset=reride_app

gem 'rails', '4.0.0'
gem 'bcrypt-ruby', '3.0.1'
gem 'faker', '1.1.2'
gem 'will_paginate', '3.0.4'
gem 'bootstrap-will_paginate', '0.0.9'
gem "mechanize", "~> 2.7.2"
gem 'pg', '0.15.1'
gem "simple_form", "~> 3.0.0.rc"
gem 'jquery-turbolinks'
gem "paperclip", :git => "git://github.com/thoughtbot/paperclip.git"
gem 'aws-sdk', '~> 1.5.7'

group :development, :test do
  gem 'rspec-rails', '2.13.1'
  # The following optional lines are part of the advanced setup.
  gem 'guard-rspec', '2.5.0'
  gem 'spork-rails', github: 'sporkrb/spork-rails'
  gem 'guard-spork', '1.5.0'
  gem 'childprocess', '0.3.6'
  gem 'railroady', '1.1.1'
end

group :test do
  gem "shoulda-matchers", github: "thoughtbot/shoulda-matchers" , branch: 'dp-rails-four' #To test model relationships simply
  gem 'selenium-webdriver', '2.0.0'
  gem 'capybara', '2.1.0'
  gem 'factory_girl_rails', '4.2.0'
  gem 'cucumber-rails', '1.3.0', :require => false
  gem 'database_cleaner', github: 'bmabey/database_cleaner'

  # Uncomment this line on OS X.
  gem 'growl', '1.0.3'

  # Uncomment these lines on Linux.
  # gem 'libnotify', '0.8.0'

  # Uncomment these lines on Windows.
  # gem 'rb-notifu', '0.0.4'
  # gem 'win32console', '1.3.2'
end

gem 'sass-rails', '4.0.0'
gem 'uglifier', '2.1.1'
gem 'coffee-rails', '4.0.0'
gem 'jquery-rails', '2.2.1'
gem 'turbolinks', '1.1.1'
gem 'jbuilder', '1.0.2'

group :doc do
  gem 'sdoc', '0.3.20', require: false
end

group :production do
  gem 'rails_12factor', '0.0.2'
end

开发.rb

RerideApp::Application.configure do
  config.cache_classes = false
  config.eager_load = false
  config.consider_all_requests_local       = true
  config.action_controller.perform_caching = false
  config.action_mailer.raise_delivery_errors = false
  config.active_support.deprecation = :log
  config.active_record.migration_error = :page_load
  config.assets.debug = true

  Paperclip.options[:command_path] = "/usr/local/bin/"
end

生产.rb

config.cache_classes = true
  config.eager_load = true
  config.consider_all_requests_local       = false
  config.action_controller.perform_caching = true
  config.serve_static_assets = true
  config.assets.js_compressor = :uglifier
  config.assets.compile = false
  config.assets.digest = true
  config.assets.version = '1.0'
  config.log_level = :info
  config.i18n.fallbacks = true
  config.active_support.deprecation = :notify
  config.log_formatter = ::Logger::Formatter.new

当我运行本地服务器并“查看源代码”时,我得到的是:

<script data-turbolinks-track="true" src="/assets/jquery.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/jquery_ujs.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/jquery.turbolinks.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/affix.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/alert.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/button.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/carousel.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/collapse.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/dropdown.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/modal.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/popover.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/scrollspy.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/tab.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/tooltip.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/transition.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/bootstrap.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/turbolinks.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/analytics.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bike_shops.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bikes.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/contacts.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/customers.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/inspections.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/make.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/model.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/quotes.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/resellers.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/static_pages.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/transactions.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/users.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/year.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/application.js?body=1"></script>

您应该在 Production.rb 中设置 config.assets.compile = true

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JQuery 事件不适用于生产中的 heroku,但适用于开发中 的相关文章

  • ngModel.$parsers 忽略 ng-model 值末尾的空格

    我有这样的指令 directive noWhitespace parse function parse return restrict A require ngModel link function scope element attrs
  • 如何用按钮打开所有infoWIndows

    现在我想添加打开所有引脚弹出窗口的按钮 infoWindows 所以我添加功能openAllInfoWindows并添加infoWindows i open 命令 但是不起作用 HTML 代码 a href Close a a href O
  • Jquery:如何隐藏或关闭所有打开的引导工具提示

    这样我就可以从我的验证函数中显示引导工具提示 var options html true placement bottom title div class tooltip alert alert danger message div inp
  • Telegram 授权无默认按钮

    使用 Telegram 第 3 方授权的唯一有记录的方法是使用其提供的脚本https core telegram org widgets login https core telegram org widgets login 这个脚本 正如
  • Bing.com 如何创建放大的缩略图?

    当我使用 Bing com 搜索图像时 我发现它们的图像经过精心裁剪和排序 当您将鼠标放在图像上时 会弹出另一个窗口 其中显示放大的图像 我想在我的程序中做同样的事情 我检查了他们页面的源代码 他们正在使用 javascript 但我仍然不
  • 使用 Javascript / Jquery 的本地存储(不使用 HTML5)

    我想在 javascript 或 jquery 中复制本地存储概念 类似于 HTML5 但不幸的是我不知道如何开始 任何人都可以建议如何使用 javascript 或 jquery 实现本地存储 不使用 HTML5 这是一个有点愚蠢的差事
  • 使用 jQuery 仅从字符串末尾修剪空格

    我知道 jQuery trim 函数 但我需要的是一种仅从字符串末尾修剪空格的方法 而不是开头 So str this is a string 会成为 str this is a string 有什么建议么 Thanks 您可以使用正则表达
  • 在 vue.js 模板中包含外部脚本

    我是 Vue js 和 web pack 的新手 所以我决定使用 vue cli webpack 来构建初始应用程序 我试图包含一个外部脚本 例如组件 不需要的模板中 但是 Vue 警告这是不允许的 我的 index html 文件与最初生
  • 使用 onBlur 事件上的值更新 React 输入文本字段

    我有以下输入字段 在模糊时 该函数调用服务来更新服务器的输入值 完成后 它会更新输入字段 我怎样才能让它发挥作用 我可以理解为什么它不允许我更改字段 但我能做些什么才能使其工作 我无法使用defaultValue因为我会将这些字段更改为其他
  • 将 NPM 包客户端与 nuxt 结合使用

    我对 nuxt 和 javascript 非常陌生 我正在尝试弄清楚如何在客户端使用我的应用程序的依赖项 我将它们列在我的 nuxt config js 中并使用 npm 安装 我也有一个文件 plugins导入它们的目录 不确定这是否好
  • 使用 JavaScript 的计时器

    我想使用java脚本实现计时器 我想随着间隔的变化而减少计时器 Example假设我的计时器从 500 开始 我想要根据级别减少计时器 例如1 一级定时器应减1 且递减速度应较慢 2 2级定时器应递减2 递减速度应为中等3 3级定时器应减3
  • Window 与 Var 声明变量[重复]

    这个问题在这里已经有答案了 可能的重复 JavaScript 中使用 var 和不使用 var 的区别 https stackoverflow com questions 1470488 difference between using v
  • 如何在 angularjs 中修剪()字符串?

    有角度特定的方法吗 如果没有 我应该使用内置的jquery 来做到这一点吗 如果我应该使用内置的jquery 如何在不使用 的情况下访问trim 函数 或者这是必要的 编辑 是的 我知道 str trim 对不起 我需要这个才能在 IE 8
  • 理论上防止 WebSocket 中第一个收到的消息丢失

    服务器端代码发送消息立即地连接打开后 它向客户端发送初始配置 问候语 以下代码是在客户端 var sock new WebSocket url sock addEventListener error processError sock ad
  • 如何调试速度慢得难以忍受的 Rails 资源预编译

    我正在开发一个 Rails 3 2 项目 尽管我不认为该项目很大 但近几个月来资产已经增加了相当多 资产由 JS 无咖啡脚本 和 SASS 文件组成 我们有很多图像 但从早期开始 它们出现的次数就更少了 所以我认为它们不是一个重要因素 我们
  • 在声明组件选择器时添加指令 - Angular 7

    我正在学习 Angular 并通过单击按钮动态创建组件 我正在尝试使用 Angular Material 的拖放功能来拖动这些创建的组件以对它们进行排序 我的基本组件 html 中有以下代码 div style margin 20px di
  • 如何清除隐藏上的引导模式

    如何在关闭 隐藏 关闭时清除引导模式 我有以下模态定义
  • Docker-compose 和 Rails 控制台问题。 “在任何来源中都找不到 rake-13.0.6”

    尝试在 docker 下运行 Rails 控制台时遇到一些问题 所有其他 Rails 命令都按预期工作 但控制台却不然 octopus git master docker compose run web bundle exec rails
  • 未捕获(承诺中)TypeError:无法读取 null popover.js 的属性“模板”

    当我触发时我注意到一个错误 popover dispose 当我上下滚动页面时 函数会发生错误 并且它会减慢我的页面速度 该函数按其应有的方式运行并关闭弹出窗口 但这就是错误Uncaught in promise TypeError Can
  • 使用 Lodash 将对象键转换为具有键值数量的数组[重复]

    这个问题在这里已经有答案了 我有一个产品对象 products bread 1 milk 2 cheese 2 chicken 1 我想要一个包含产品名称的数组 如下所示 products bread milk milk cheese ch

随机推荐

  • 缩放单例

    在花了几个小时思考基于服务器的应用程序的一些架构问题之后 我觉得我将不得不使用单例来实现我的目标 纯粹出于以下原因 证明我的气味是合理的 我不需要将昂贵的对象传递到调用堆栈深处 我可以在任何上下文中对单例管理对象执行功能 很多代码已经存在
  • Swagger 标头定义

    我似乎找不到是否可以声明标头对象以便在响应标头中重用它 有为响应模式定义对象的示例 但它不会转置为响应标头 我只设法制作了一个可重用的响应对象 如下所示 responses DownloadOk description Dowload Ok
  • OS X clang -pthread

    在 OS X 中使用 pthread 库和 clang 的编译器 链接器要求是什么 对于 GCC 我知道使用 pthread 设置适当的编译器 链接器选项 但我不确定 OS X 与 clang 的情况 air jose clang c te
  • Symfony2 和 Doctrine2:没有为实体“X”指定标识符/主键。每个实体必须有一个标识符/主键

    我正在使用 Symfony2 创建一些虚拟项目 我遵循 Symfony2 Book 文档来使用 Doctrine 命令行创建实体 http symfony com doc current book doctrine html add map
  • 与 apache Web 服务器和 tomcat 服务器的粘性会话

    我使用 apache Web 服务器作为 apache 后面的两个 tomcat 实例的负载平衡器 当第一个请求发送到节点 A 而来自同一客户端的第二个请求发送到节点 B 时 我无法访问节点 A 内的会话变量 这是显而易见的 我在互联网上冲
  • 如何创建适合移动和桌面浏览器的平面图?

    想要创建一个办公室的动态平面图 以显示占用情况并链接到会议等 我手头有一些 AutoCAD 文件 并且一直在研究在浏览器上制作此文件的方法 在我看来 SVG 将是一个很好的竞争者 它支持大多数移动和桌面浏览器 请不要使用旧版本的 IE 但我
  • Rust 似乎在内存中为布尔数组分配与 8 位整数数组相同的空间

    Running fn main println std mem size of lt u8 1024 gt println std mem size of lt bool 1024 gt 1024 1024 这不是我所期望的 所以我编译并在
  • 找不到 Alamofire 框架

    我正在尝试将 alamofire 安装到我的项目中 以便我可以将图像上传到我的服务器 但是我似乎找不到alamofire framework文件 我已经下载了两次 git 完成了安装说明https github com Alamofire
  • SQL NOT IN 子句

    我有一个查询未按预期工作 Q1 SELECT id name FROM vw x WHERE id NOT IN select pid from table x GROUP BY id name Having max c date gt G
  • SQL Server:存储过程的 EXECUTE AS 子句未授予 sysadmin 权限

    我开发了一个存储过程 以便从备份文件恢复数据库并向其中添加应用程序用户 该存储过程属于master 数据库 问题是我的 IT 部门不允许我使用管理员用户 只能使用 sysadmin 用户的 EXECUTE AS 语句 我可以恢复数据库 但找
  • 为什么要设置线程的Terminal属性?

    我有多线程应用程序 procedure TGridUpdater Execute begin inherited CodeSite Send Thread executed sp ConnectionFactory GetConnectio
  • 这是使用和测试利用工厂模式的类的正确方法吗?

    我对工厂模式没有太多经验 我遇到过一种情况 我认为这是必要的 但我不确定我是否正确实现了该模式 并且我担心它的影响对我的单元测试的可读性有影响 我创建了一个代码片段 它 根据记忆 近似于我正在工作的场景的本质 如果有人能看一下它并看看我所做
  • 如何隐藏/加密谷歌和其他浏览器中网络选项卡的ajax请求? [复制]

    这个问题在这里已经有答案了 我正在 jwplayer 上工作 我只想隐藏 加密 jwplayer 发送的用于播放视频的 ajax 请求 原因是 当 jwplayer 发送请求时 它包含视频 ID 我不想透露它 因为它是从 google 驱动
  • 使用预填充的核心数据部署应用程序

    我正在尝试将我的应用程序与Core Data已经有人居住 我找到了一些链接 其中解释了如何执行此操作 但要么不起作用 要么答案非常旧 我跟着发帖但不起作用 解决方案可能是导入 sqlite文件到应用程序文件夹 然后将它们复制到设备的文件系统
  • 创建 C# 安装程序的最佳方法

    我使用 Visual C 2008 Express 版 我希望能够为我拥有的项目创建一个安装程序 我可以使用发布工具来完成此操作 但您几乎无法控制 有没有免费的方法可以做到这一点 或者我需要使用 VS2008 的完整版本 或者 我发布时是否
  • 将变量从 [HttpPost] 方法传递到 [HttpGet] 方法

    我将视图从 HttpPost 方法重定向到 HttpGet 方法 我已经让它工作了 但想知道这是否是最好的方法 这是我的代码 HttpPost public ActionResult SubmitStudent StudentViewMod
  • 将灰度滤镜应用于 div

    尝试对主背景上方的 div 应用灰度滤镜 想知道这是否可以通过 jQuery CSS3 或 HTML5 实现 我正在尝试一些新的 CSS3 HTML5 技术 但没有成功 我无法将其保存为两个图像 因为背景需要拉伸全尺寸 因此它在每个屏幕上不
  • itgenobr001:找不到客户端。与 Exact Online 比利时合作的数据接入点

    我们刚刚入住https ecotaksen be https ecotaksen be Exact 上的查询和更新运行良好 但安装生产许可证后出现错误itgenobr001 Client not found occurs 我的数据容器规范是
  • 填充下拉列表客户端。收到回发验证错误

    我有一个带有两个下拉列表的网络控件 当您从第一个下拉列表中选择某些内容时 第二个下拉列表就会相应地填充 当回发发生时 我得到旧的 回发或回调参数无效 事件验证已启用 使用于 配置或 在 页 出于安全目的 这 功能验证参数 回发或回调事件发起
  • JQuery 事件不适用于生产中的 heroku,但适用于开发中

    这似乎是一个常见问题 但我还没有找到适用于我的情况的解决方案 我在 bikes js coffee 中有一些 JQuery 在本地开发中可以正常工作 当我推送到 Heroku 时 bikes js coffee 中的脚本不会运行 浏览器的