我目前在处理这个需求:我们有一个模块化的应用程序,其中客户可以按需启用模块。每个模块都是一个bundle。现在我们有一种仪表板,我想根据安装的模块/包注入资产(JS/CSS)。此外,我想将这些文件合并成一个“dashboard.{js | css}”文件,以便我们不必为每个bundle的js和css文件发出1个请求。
对于其他文件,我们使用Twig的Assetic集成和命名资产的组合,但似乎配置密钥
我还研究了自定义配置/服务对,将资产加载器注入到assetics
有任何想法吗?
更新1
我瞄准以下配置:
对于其他文件,我们使用Twig的Assetic集成和命名资产的组合,但似乎配置密钥
assetic.assets
无法在bundle的扩展类中公开访问...这很可惜,因为它将是我们方法的绝佳简单方式。我还研究了自定义配置/服务对,将资产加载器注入到assetics
AssetManager
服务中...但这感觉像完全过度,我认为我只是错过了什么。有任何想法吗?
更新1
我瞄准以下配置:
assetic: # Assetic Configuration
assets:
dashboard_js:
inputs:
- '@ModuleOneBundle/Resources/public/js/dashboard.js'
- '@ModuleTwoBundle/Resources/public/js/dashboard_dep.js'
- '@ModuleTwoBundle/Resources/public/js/dashboard.js'
- '@ModuleThreeBundle/Resources/public/js/dashboard.js'
我们的客户可以决定使用哪些模块,因此我无法硬编码它们。所以我尝试使用 Configuration
类,但它们无法访问我需要的内容。我希望避免运行自定义构建脚本来创建 config.yml
文件。