包含通过Bower安装的插件的一般方法是什么?

时间:2014-12-03 12:07:13

标签: javascript angularjs bower-install

想象一下,我刚刚使用bower install angular-date-range-picker在项目的根目录中安装了我想要的插件。

现在,我的所有js文件(angular项目)通常都位于项目根目录中名为js on的文件夹中。

这就是我觉得我错过了什么的地方。如何在不追溯bower命令安装的每个依赖项的情况下将我的新插件包含到我的项目中?我通常在index.html上包含标签的所有脚本。我已经将插件js文件从bower_components文件夹中复制到了我的js文件夹中(我觉得这是错误的)。

如果这是链接到插件的可接受方式,那么我应该直接链接到bower_components文件夹吗?如何包含所有插件的依赖项而不为每个插件编写脚本标记? (我怎么知道它取决于什么,例如bower_components文件夹中还有其他插件。)

道歉,如果这个问题没有任何意义,我显然错过了一些非常重要的工作流知识,而且我不知道如何用问题来表达我想要谷歌的想法。

3 个答案:

答案 0 :(得分:2)

您应该为每个人编写脚本标记。在大多数情况下,请检查相应的github存储库以查看所需的依赖库。除此之外,在脚本标记中查看应该引用哪个文件的提示将具有.min的扩展名。 .min是库的缩小版本,用于删除空格并替换大变量名称。

一旦您的应用程序准备好生产,您可以做几件事。

您可能希望转移到内容交付网络(CDN),而不是在本地引用您的文件。这样做的好处是,您将拥有一个托管库文件的可靠主机。

另一个选择是使用Grunt或Gulp,它能够将所有依赖文件合并到一个文件中。这样做的好处是加载一个文件而不是多个文件的加载时间要快得多。

Content Delivery Network - Wikipedia

Grunt - Homepage

Gulp - Homepage

答案 1 :(得分:0)

通常它的配置如下:

<!-- build:js ${contextRoot}/app/assets/scripts/modules.min.js -->
<script src="../bower_components/jquery/dist/jquery.min.js"></script>
<script src="../bower_components/select2/select2.js"></script>
<script src="../bower_components/angular/angular.min.js"></script>
<script src="../bower_components/angular-route/angular-route.min.js"></script>
...
<!-- endbuild -->

将脚本包含到index.html中。然后在构建过程中,一些grunt / gulp(例如grunt-usemin)插件可以用{min}版本的文件替换<!-- build: -->个注释之间的整个部分。

答案 2 :(得分:0)

如前所述,您可以将Gruntgrunt-injector一起使用,它是专门针对此进行的,可用于自动将bower依赖项注入您的index.html,以及其他js / css文件(您将需要wiredep依赖项)。

您将不再需要担心文件注入。