我有一个项目,其中有许多 javascript 文件,其中一些是全局的并且适用于所有页面,我有两组文件仅适用于主页,其余的文件适用于其他页面。这是我的配置文件,它可能是非常错误的,这是我第一次吃早午餐:
exports.config =
# See docs at http://brunch.readthedocs.org/en/latest/config.html.
# Application build path. Default is public
#buildPath: 'webapp'
paths:
public: 'webapp/assets'
compass: './config.rb'
watched: ['app', 'experiences', 'main', 'home', 'node_modules']
files:
javascripts:
defaultExtension: 'js'
joinTo:
'javascripts/app.js': /^main/
'javascripts/experiences.js': /^experiences/
'javascripts/home.js': /^home/
order:
before: [
'jquery.js',
'custom.modernizr.js',
'jquery.simplemodal.js',
'foundation.js',
'fastclick.js',
'retina.min.js'
]
stylesheets:
defaultExtension: 'styl'
joinTo:
'stylesheets/app.css': /^app\/styles\/app/
'stylesheets/ie.css': /^app\/styles\/ie/
templates:
defaultExtension: 'hbs'
joinTo: 'javascripts/templates.js'
minify: yes
modules:
wrapper: false
因此,在我的应用程序文件夹中,所有文件都显示在 before 数组中,但顺序根本不起作用,并且 jquery 不在其他文件之前,并且我收到了 js 错误。我不确定早午餐是否是这样工作的,但我不能像我说的那样将所有脚本放在一个文件中,因为主脚本与其余脚本不兼容(我没有制作它们,我只需要将已经运行的项目与早午餐集成)
最佳答案
您是否尝试过明确表达您的 file paths在之前的数组中?例如
files:
javascripts:
defaultExtension: 'js'
joinTo:
'javascripts/app.js': /^main/
'javascripts/experiences.js': /^experiences/
'javascripts/home.js': /^home/
order:
before: [
'app/main/jquery.js',
'app/main/custom.modernizr.js',
'app/experiences/jquery.simplemodal.js',
'app/home/foundation.js',
'app/home/fastclick.js',
'app/home/retina.min.js'
]
也许这可以为早午餐解决问题。也许看看this trick也。它将允许您更好地自定义您的结构,同时在配置文件中保持 Brunch 的明确性。
关于javascript - 尝试创建多个 js 文件时,订单在早午餐中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24859707/