我正在尝试部署一个相当大的项目,我在生产中遇到了一些奇怪的js问题。在开发中,一切都很好。在预编译我的资产(javascript是通过requirejs-rails gem用r.js编译)之后,我留下了一个压缩的javascript文件。这里奇怪的是,当我加载网页时,我开始在压缩的js文件中出现错误,即使在开发过程中代码没有错误,即使我的资产压缩没有问题。我美化了压缩文件,并使用扩展版本重新加载了页面。大多数错误都出现在我没写过的库中。是否有任何理由为什么与r.js一起编译所有这些文件会产生如此多的错误?
这是我的require.js yml,用于生成r.js构建。
paths:
backbone : 'libs/backbone'
marionette : 'libs/backbone.marionette'
jquery : 'libs/jquery'
snap : 'libs/snap'
transit : 'libs/transit'
underscore : 'libs/underscore'
text : 'libs/text'
image : 'libs/image'
cookie : 'libs/jquery.cookie'
notify : 'libs/notify-bar'
leaflet : 'libs/leaflet'
mapbox : "http://api.tiles.mapbox.com/mapbox.js/v1.0.2/mapbox"
landing : 'front_end/home/landing'
logo : 'front_end/home/logo'
faq : 'front_end/home/faq'
about : 'front_end/home/about'
shim:
leaflet:
'deps' : ['jquery']
'exports' : 'Leaflet'
mapbox:
'deps': ['leaflet']
'exports': 'L'
backbone:
'deps' : ['jquery', 'underscore']
'exports' : 'Backbone'
marionette:
'deps' : ['backbone','jquery','underscore']
'exports' : 'Marionette'
handlebars:
'exports' : "Handlebars"
snap:
'deps' : ['jquery']
'exports' : 'Snap'
transit:
'deps' : ['jquery']
'exports' : 'Transit'
underscore:
'exports' : '_'
notify:
'deps' : ['jquery']
'exports' : 'Notify'
jquery:
'exports' : "$"
name: "application"