为什么Symfony2捆绑包不能嵌入第三方库

时间:2012-05-22 06:42:45

标签: php symfony

Bundle Structure and Best Practices

  

捆绑包不应嵌入用JavaScript编写的第三方库,   CSS或任何其他语言。

为什么我不应该创建例如bootstrapjQuery捆绑包?

我认为如果所有第三方CSS和JavaScript库都存在于自己的捆绑包中,那么维护会更容易。

3 个答案:

答案 0 :(得分:3)

嗯,首先,这是违反直觉的。 Symfony Bundles用于PHP功能包,你在谈论捆绑前端库。

其次 - 为什么会更容易?像bootstrap和jQuery这样的东西首先是 public 资源 - 它们不需要需要可分发的bundle来实现高度重用。 PHP资源公开,因此受益于此类系统。

答案 1 :(得分:1)

当两个或更多捆绑包使用相同的第三方库但版本不同时,就会出现混乱。您的捆绑包的用户将无法选择要包含的库,因此当时不能同时使用这两个捆绑包。

如果您的捆绑包是一个独立的应用程序,即应用程序的主捆绑包,可以将它们存储在捆绑包文件夹中。例如,SonataAdminBundle包括第三方库:bootstrap.css,qtip,famfamfam图标。

答案 2 :(得分:0)

看看MopaBootstrapBundle https://github.com/phiamo/MopaBootstrapBundle它整合了TwitterBootstrap& jQuery lib,如果启用initializr addon,也可以使用HTML5BoilerPlate。