2014-01-19 45 views
1

我有位於~/lens/v早午餐config.coffee文件,其中包括這些行:爲什麼brunch沒有從/ app的子目錄添加javascript?

files: 
    javascripts: 
     defaultExtension: 'coffee' 
     joinTo: 
     'javascripts/app.js': /^app/ 

早午餐需要擴展名爲.js的是位於/應用程序的根目錄下,並將它們連接到應用程序的文件。 js - 但它不會連接位於/ app子目錄中的文件。

具體來說,我試圖讓早午餐在位於~/lens/v/app/assets

~/lens/v/app/assets$ cat r.coffee 
d3.select("body").style("background-color", "black"); 

我能夠建立這樣

~/lens/v$brunch b 

該項目的CoffeeScript文件添加但是,當我搜索應用程序.js文件的「d3」我無法找到它。由於某些原因,JS沒有被連接起來。

grep -r "d3" app.js //returns nothing 

從配置文件javascripts/app.js': /^app/的這行應該將/ app中的任何javascript文件加入到app.js.但是這沒有發生。當我將JavaScript文件的擴展名更改爲.js(來自.coffee)時,我會得到相同的行爲。

我可以採取哪些步驟來調試?

+0

看來你沒有安裝咖啡腳本插件。看到這裏:https://github.com/brunch/coffee-script-brunch –

回答

1

問題是早午餐對資產有特殊處理。它們的處理方式與您希望編譯的文件不同 - 按原樣複製到公用目錄中。

解決您所描述問題的最簡單方法是將該咖啡標移動到app以下的其他地方,但不是在assets

或者,您可以在conventions.assets下重新配置您的早午餐配置中的資產。 https://github.com/brunch/brunch/blob/stable/docs/config.md#conventions

0

我前幾天問這個確切的同樣的問題,這裏的答案是:

How can I compile individual CoffeeScript files in the assets directory?

如果你想保持這些文件的資產/,我的解決辦法是使用離職後Brunch插件並手動轉換它們,如上面鏈接所示。

否則,將它們移出asset /,並使用我首先鏈接的coffeescript插件。

相關問題