包含Composer,NPM或Bower的库

时间:2015-05-14 13:17:57

标签: php npm composer-php gulp bower

我最近进入了Composer,NPM和Bower。我没有他们的能力之间有很多重叠,我想知道我的方法是否理智?如果没有,我该怎么办?

我通常通过设置composer来加载我的PHP库和依赖项来启动我的PHP项目。之后,我使用NPM安装Gulp和我使用的所有gulp插件。最后我使用Bower来获取JS和CSS库。

其中大部分都可以从GitHub加载,所以理论上我可以使用Composer来安装我的JS / CSS或Bower来加载我的PHP。我几乎已经在Composer上设置了它的自动加载功能,所以我想我的问题是我是否应该抛弃Bower?

目前,当我部署时,我会结帐我的仓库并致电npm install安装Gulp等。在我的package.json我使用"scripts": {"install": "gulp install"}开启我的install任务gulpfile.js。这会加载启动Composer和Bower安装的gulp-composergulp-bower插件。

1 个答案:

答案 0 :(得分:2)

他们都做的几乎相同,不同的是他们的默认包列表(NPM纯粹是NodeJS,Composer主要是PHP,Bower纯粹是js / css等)以及他们写的语言。

但是,它们都有一个限制:它们只能在一个位置安装软件包。这意味着您无法在some/php-frameworkvendor/ my-css-framework中安装web/

位置非常重要:您经常希望PHP代码/ NodeJS库位于公共根目录之外,但您的资产应该位于公共根目录中。

我认为这是一个非常好的做法,如果你也能够使用每个依赖管理器来设计它所使用的语言(例如,Composer也做一些PHP特定的东西,如自动加载,而NPM做一些NodeJS特定的东西)。