2013-07-17 52 views
2

我曾在我的symfony網站中與後衛合作過livereload。但是我的資產(css/js)位於'web'目錄中。但後來我瞭解到,最好的做法是將所有內容都保存在'src'中,這樣您就可以將所有文件保存爲一個包。所以我把它移到資源/ public目錄中我的包在我的「SRC」目錄並運行:我如何獲得livereload與symfony2一起工作(使用後衛?)

php app/console assets:install target [--symlink] 

這創造了從「網絡」必要的符號鏈接到我的「src」中的資產,似乎一切工作如果我在'src /.../Resources/public/',sass,compass中運行警衛,但是實時刷新不再有效。我想知道,如果它有什麼用符號鏈接(這是工作之前,我使用livereload.js)我在這裏讀到:

symfony2 assetic dump stopped watch

這裏:

No route found for "GET /img/glyphicons-halflings.png"

人們得到livereload與symfony/guard/sass一起工作。我假設的技巧是編寫Guardfile,以便它運行資產:install或assetic:dump,我猜是什麼讓livereload工作?但是我找不到任何人解釋他們是如何得到這個集合(symfony2,livereload,sass,guard)的工作(也許只是Guardfile?)。

回答

1

束可能是更好的方法。但是,所有我落得這樣做從他們的網站下載liveload.js,將它添加一個javascript包括將此添加到我的Guardfile:

guard 'livereload' do 
watch(%r{.+\.(css|html|js)$}) 
end 

和手動跑衛。

5
+1

此方法使用grunt。這跟守衛很相似。這是一個taskrunner,可以在監視的文件上運行任務,但在JavaScript中運行。 JavaScript是比ruby更輕的依賴項,所以也許它是您的選擇。所有的捆綁軟件都會在需要的地方注入LiveReload代碼片段。該文檔還詳細介紹瞭如何使用grunt。 – SpoBo

相關問題