regularjack / frontend-bundle
Symfony 应用程序的现代前端开发工作流程
v0.2.2
2018-03-15 14:44 UTC
Requires
- php: >=5.4
- symfony/asset: ~2.7|~3.0
- symfony/config: ~2.7|~3.0
- symfony/console: ~2.7|~3.0
- symfony/dependency-injection: ~2.7|~3.0
- symfony/event-dispatcher: ~2.7|~3.0
- symfony/framework-bundle: ~2.7|~3.0
- symfony/http-kernel: ~2.7|~3.0
- symfony/process: ~2.7|~3.0
- symfony/templating: ~2.7|~3.0
Requires (Dev)
- matthiasnoback/symfony-config-test: ~1.4
- matthiasnoback/symfony-dependency-injection-test: ~0.7
- phpunit/phpunit: >=4.2
- symfony/browser-kit: ^2.7|~3.0
- symfony/filesystem: ~2.7|~3.0
- symfony/http-foundation: ~2.7|~3.0
- symfony/phpunit-bridge: ~2.7|~3.0
- symfony/routing: ~2.7|~3.0
- symfony/var-dumper: ~2.7|~3.0
README
Symfony 应用程序的现代前端开发工作流程。
已弃用
该项目已弃用。请使用 Webpack Encore 代替。
Webpack Encore 是一种更简单的方法,可以将 Webpack 集成到您的 Symfony 应用程序中。它封装了 Webpack,提供了一个干净且强大的 API 用于打包 JavaScript 模块、预处理 CSS 和 JS 以及编译和压缩资源。
以前,Symfony 没有对现代前端开发工作流程的一级支持,这正是此包试图解决的问题。现在有了 Webpack Encore,这种情况已经不再存在,因此这个包没有必要继续存在。Webpack Encore 做得更好,是官方推荐将前端技术集成到 Symfony 应用程序中的方法。
Symfony 随包附带 Assetic,用于管理前端资源,如 CSS、JavaScript 或图像。Assetic 非常适合快速启动项目,但随着应用程序的增长,其局限性开始显现。
因此,将前端开发工具的本地工具集成到 Symfony 项目中变得越来越普遍(bower
、gulp
、webpack
、livereload
等)。然而,设置无缝的前端开发工作流程并不容易,并且每次开始新项目时,开发人员都必须重复操作。
这里 有 一些 工具,可以使此操作更容易,但它们都有自己的局限性,许多都是前端开发工具的包装器。开发人员应该能够直接使用本地工具,并且它们能在他们的 Symfony 项目中正常工作。
此包试图成为在 Symfony 项目中快速、轻松和干净地设置定制前端开发工作流程的首选解决方案。
支持 PHP 5.4+、Symfony 2.7+
功能
- 资源管道
- 使用 Symfony 的原生调用引用资源
<script src="{{ asset('js/foo.js') }}"></script>
- 无需在 Twig 模板中添加资源管道的 界限
- 生产环境中资源自动进行 缓存清除
- 快速开发
- 快速重建使工作流程高效
- 只处理更改过的文件
- 不再由于 Assetic 而出现缓慢的刷新
- LiveReload
- 保存文件时浏览器自动更新
- 更改 CSS,浏览器立即更新,无需页面刷新
- Bower
- 前端依赖项只需
bower install
即可 - 您的存储库中不再有供应商代码
- 自动从
bower.json
生成vendor.js
和vendor.css
文件
- 前端依赖项只需
- 缓存清除
- 在生成环境中自动向资源添加版本号
- 无需在每个部署时设置版本号
- 仅当资产内容发生变化时,其版本号才会改变