当我在本地运行应用程序时,一切正常。我在应用程序中只有3个javascript文件:
应用程序/资产/ Javascript角/ application.js中
//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require bootstrap
//= require_tree .
应用程序/资产/ Javascript角/ social_posts.js
//= require moment/moment
时刻位于vendor/assets/javascripts
。
应用程序/资产/ Javascript角/ social_posts_actions.js.coffee
console.log 'hello'
# Format post dates
format_post_dates = ->
$('time.moment').each ->
dt = moment($(this).attr('datetime'))
dtstr = dt.format('h:mm A')
if dt.dayOfYear() != moment().dayOfYear()
dtstr = dt.format('MMM Do, ') + dtstr
$(this).html dtstr
return
return
add_edit_click_listener = ->
$('.edit-social-post-action').click ->
$('#socialPostMessage').val $(this).data 'message'
$('#socialPostImageUrl').val $(this).data 'image-url'
$('#myModal').modal()
return
return
# Add Handlers for the edit action
$(document).ready ->
console.log 'hello doc.ready'
add_edit_click_listener()
return
当我在heroku上查看源代码时,它显示我的评论和console.log
调用在javascript源中更新但没有执行任何操作。
此外,如果我尝试从控制台调用moment()(其中一个包含的库),则该功能不可用。
我已尝试在推送到heroku之前在本地预先编译我的资产,并且没有解决问题。
这是rails 4
答案 0 :(得分:1)
找出解决方案。显然因为我没有包括系绳,引导程序正在逐渐消失。相当烦人:(
答案 1 :(得分:0)
在运行rake assets:precompile RAILS_ENV=production
之前,您是否已运行git push heroku master
?您需要在推送之前编译资产管道(图像,css和js文件),否则它们不会上传到生产应用程序。