这应该很简单,但它根本不起作用。与sinatra-assetpack一起运行Padrino。所有css文件都完全像这样:
serve '/stylesheets', from: '/app/stylesheets'
css :shared, [
'/stylesheets/reset.css',
'/stylesheets/runemadsen.css'
]
但是当尝试提供.js文件时,它不起作用。我在脚本加载中获得了404:
serve '/javascripts', from: '/app/javascripts'
js :shared, [
'/javascripts/jquery.js'
]
我真的不明白。这是完全相同的代码。文件在那里。有什么提示吗?
答案 0 :(得分:0)
不确定问题,但您能否使用基本方法? serve '/javascripts', from: '/app/javascripts'
部分是可选的。来自Readme只有javascript:
require 'sinatra/assetpack'
class App < Sinatra::Base
set :root, File.dirname(__FILE__)
register Sinatra::AssetPack
assets {
# The second parameter defines where the compressed version will be served.
# (Note: that parameter is optional, AssetPack will figure it out.)
js :app, '/js/app.js', [
'/js/vendor/**/*.js',
'/js/app/**/*.js'
]
}
end
值得的是,我的assets
块看起来像这样:
assets {
js :main, [
'/js/jquery.js',
'/js/application.js',
]
jquery位于public/js
,application.coffee位于app/js
。我的布局(haml)中的脚本标记是=js :main
。