我目前正在开发我的第一个AngularJS应用程序,我的目录设置如下
app/
assets/
<css, js, images etc...>
bower_components/
<various bower things>
components/
<controllers, directives etc. in sub folder components>
partials/
app-controller.js
app.css
index-async.html
index.html
node_modules/
<various node things>
test/
<karma>
bower.json
package.json
关于凉亭/节点包如何适应这个等式,我感到非常困惑。我使用angular-seed git repo开始了这个项目,并且已经修改了结构以匹配google's best practices结构。
Angular种子项目使用“bower_components / component”引用html中的文件,但是在.gitignore文件中忽略了bower_components文件夹。如果忽略bower_components和节点组件文件夹,那么如果它们不应该与最终产品一起使用,那么在你的html中引用它们是不是很糟糕吗?
答案 0 :(得分:3)
这是因为命令bower install
将根据bower.json
文件中列出的内容将项目的所有依赖项安装到该目录中。
无需检入git仓库中的依赖项,只需检入bower.json
。
使用bower安装新软件包时,可以将-s
标志添加到命令中以将新软件包保留到bower.json
文件。 bower install -S <package>
通常Grunt
或Gulp
已设置构建任务,以便在构建项目时为您运行bower install
命令。
但不引用客户端应用中node_modules
文件夹中的库,仅在服务器端。
但同样适用于node_modules
该文件夹应被git忽略,但请确保检入packages.json
文件npm's
(节点包管理器)bower.json
equivelent。