javascript - 我应该从 bower_components 复制文件并在那里引用它们吗?

标签 javascript bower bower-install

安装 BackboneJSjQuery 等后,我有一个非常大的 bower_components 目录。

├───.idea
│   ├───runConfigurations
│   └───scopes
└───app
    ├───bower_components
    │   ├───backbone
    │   ├───jquery
    │   │   ├───dist
    │   │   └───src
    │   │       ├───ajax
    │   │       │   └───var
    │   │       ├───attributes
    │   │       ├───core
    │   │       │   └───var
    │   │       ├───css
    │   │       │   └───var
    │   │       ├───data
    │   │       │   └───var
    │   │       ├───effects
    │   │       ├───event
    │   │       ├───exports
    │   │       ├───manipulation
    │   │       │   └───var
    │   │       ├───queue
    │   │       ├───sizzle
    │   │       │   ├───dist
    │   │       │   └───test
    │   │       │       ├───data
    │   │       │       └───unit
    │   │       ├───traversing
    │   │       │   └───var
    │   │       └───var
    │   └───underscore
    ├───css
    └───js

引用这些的最佳做法是什么?例如,直接将 Grunt 任务复制到主应用程序,或者将 bower_componects 放在 ~/app 目录中?

最佳答案

不要将它们复制到您的应用程序中 - 这完全违背了像 Bower 这样的包管理器的意图!通过这样做,您将从包管理器中控制这些文件 - 然后您将处于与以前相同的状态,每次更新这些依赖项时都必须手动复制文件。

只需直接引用 bower_components/ 目录中的文件(很可能在您的 HTML 中)。如果您不喜欢那个位置或名称,您可以让 bower 将您的组件放在其他地方,请参阅 .bowerrc 文档:http://bower.io/docs/config/


我可以想到仅使用 bower_components 目录中的特定文件的用途 - 但仅在构建时:

如果您编写一个只在部署时运行的 grunt 任务,并从 bower_components 目录中删除所有未使用的文件,那当然是有道理的,并且不违背包管理器的想法,因为它只发生在每次部署时,包管理器没有责任的时候。

使用这种方法可能会遇到的唯一问题是,如果最终将文件复制到不同的目录 - 因为那样的话,您必须先更改 bower_components 中对所有文件的引用部署也是。简单的解决方案是不要复制文件,而是只删除您不需要的文件。

关于javascript - 我应该从 bower_components 复制文件并在那里引用它们吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26567925/

相关文章:

javascript - 将包含图像和图案的 SVG 下载为 PDF

javascript - 从复选框中获取列表并插入到 css 中

javascript - 将 Bower 与 Webpack 结合使用 - React

javascript - Browserify 需要使用 Browserify 构建的 vendor 模块

node.js - 当收到像 Unresponsive script 这样的消息时,如何运行基于 Nodejs 的项目?

bower - 如何解决 bower 问题 : "ENORESTARGET Tag/branch master does not exist"

ubuntu - Bower 找不到 Git 安装

代码上的 Javascript Mustache 无效模板

javascript - 使用滚动条自动水平滚动

node.js - 在代理后面安装 Bower 包