最近遇到一个问题,项目中用到了angular-sweetalert这么个插件,这个插件应该是angular对原sweetalert插件的包装,因为bower安装angular-sweetalert时,同时安装了sweetalert。然后bower安装的插件,在gulp构建时,注入采用的是wiredep这么一个插件。问题来了:最终的页面上注入了angular-sweetalert,却没有注入它的依赖——原sweetalert!
我擦,没办法,只好顺藤摸瓜,先研究gulp,找到注入的task,因为惯性思维,我一直在搜关键字“bower_components”,想着哪个task处理这个文件夹了,那它就是负责注入的bower所安装的插件,结果证明我错了~~~找很久没找到,于是耐心一步一步看,终于找到wiredep这么个玩意儿。于是现在问题就是为什么wiredep能把其他插件注入,唯独sweetalert没注入!
于是去看wiredep的说明,终于发现了下面图里的一行小字!
再仔细一看bower安装的sweetalert依赖包,2.1.0版本的,别说main属性了,bower.json都省了。。。哎,老外更新组件,也不考虑兼容性了么。。。
总结:wiredep这货,是根据插件根目录的bower.json(准确的说,是该文件中指定的main字段,这个字段指定的是插件的入口文件)来注入插件的。。。。。。