【问题标题】:JS libraries and frameworks standard directoriesJS 库和框架标准目录
【发布时间】:2013-07-03 17:32:51
【问题描述】:
在网络应用程序中,库位于以下目录中:
/lib
/library
/libraries
/lib、/library、/libraries 是事实上的标准。现在,
【问题讨论】:
标签:
php
javascript
web-applications
directory-structure
【解决方案1】:
为了它的价值,我将第三方库和框架(我真的不认为需要区分它们)放在一个名为 /vendor 的目录中。我更喜欢把它放在那里,因为它清楚地将我们编写的库(自然进入/lib)与未修改的供应商库(也称为依赖项)分开。
需要考虑的一点是,很多库(例如 Bootstrap)不仅包含 JavaScript:还有 CSS 和图像。没有什么比第三方库更让我恼火的了,它想把它的 CSS 放在我的根目录 /css,图片放在我的根目录 /img 等等。我希望所有这些依赖项保持在一起。所以我的目录结构看起来像这样:
/
lib/
mylib.js
css/
mycss.css
img/
myimg.png
vendor/
jquery-1.10.0.min.js
bootstrap/
img/
bootstrapglphs.png
css/
bootstrapcss.css
【解决方案2】:
这真的取决于你。
例如,在 Django webapp 中,将这些文件保存在设置文件指定的 STATIC_FILES 目录中是有意义的,因为它们是由客户端下载的并且应该静态提供。
然后您可能希望根据文件名或目录名为这些文件建立一个版本控制系统,以便您可以指示您的 HTTP 服务器设置正确的到期标头。
这里与 C 项目中的 /lib 有根本的区别,因为这些文件是提供给客户端的并且应该能够随时被缓存清除。