为什么有些JS行为在开发中有效,但是当我推送到Heroku时却没有?

我正在尝试创建一个步骤表单 – 当选择其他内容时触发/显示某些字段。

这是一个例子 – http://jsfiddle.net/XnPZF/ – 它工作(它也适用于开发)。

只是无法弄清楚为什么当我推送到Heroku时这不起作用。

这是Heroku的一个版本 。

登录凭证:abc@test.com/test123

应该触发其下方其他字段的字段是Property_Type和Category。

以下是一些代码片段:

/views/listings/new.html.erb

  { :class => 'form-horizontal' } do |f| %>  

Multi-Family

Condo

listings.js文件:

 $('#listing_property_type_id').on('change', function(){ var option = $(this).find(':selected'); $('[data-show-for-prop-type]').hide(); //And maybe reset? $('[data-show-for-prop-type='+ option.text() +']').show(); }); 

在realty-cloud.herokuapp.com/listings/new上看到几个JS错误……“Uncaught TypeError:无法读取未定义的属性’oApi’”。 几乎可能是积极的问题。

Dev没有问题的原因是因为在dev中,它是单独的资产,因此错误被限制在具有该错误的那个js文件中。 但是,由于资产管道汇编为一个,因此错误会停止其余部分的执行。

最好的办法,修复所有控制台错误,或添加“未定义”检查以防止出现这种“Uncaugh TypeError”错误。