2013-07-17 46 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

相关问题