我一直在创建一个有角度的网站,我利用UI Bootstrap来构建许多控件。 (我在我的项目中手动下载并引用了 ui-bootstrap-tpls-1.1.2.min.js 。
在我尝试过渡到bower管理客户端软件包之前,一切运行良好。为此,我去了:the code on Github。在那个页面上它说:
使用NPM安装
$ npm install angular-ui-bootstrap
使用Bower安装
$ bower安装angular-bootstrap
以下是声明:
注意:请勿安装' angular-ui-bootstrap'。一个单独的存储库 - bootstrap-bower - 托管已编译的javascript文件和bower.json。
如果我查看包 bootstrap-bower 包,它似乎是 只是 引导程序,并且根本没有声明任何角度指令。
由此我得出结论, angular-bootstrap 是要安装的正确软件包。安装和引用软件包后,除了手风琴控件 外,一切都正常 。
我很困惑......我是否安装了错误的软件包或是否存在依赖性问题?
答案 0 :(得分:0)
当我研究这个时,我发现由凉亭手风琴控制器安装的包被声明为:
angular.module('ui.bootstrap.accordion', ['ui.bootstrap.collapse'])
.constant('accordionConfig', {
closeOthers: true
})
.controller('AccordionController',
['$scope', '$attrs', 'accordionConfig',
function($scope, $attrs, accordionConfig) {
// This array keeps track of the accordion groups
this.groups = [];
...
但是在手动下载的版本声明了手风琴它是这样声明的(注意 uib 前缀):
angular.module('ui.bootstrap.accordion', ['ui.bootstrap.collapse'])
.constant('uibbAccordionConfig', {
closeOthers: true
})
.controller('UibAccordionController',
['$scope', '$attrs', 'uibAccordionConfig',
function($scope, $attrs, accordionConfig) {
// This array keeps track of the accordion groups
this.groups = [];
...
进一步挖掘我发现问题是安装的软件包是0.13.4,手动下载的版本是1.1.2。这是因为"管理Bower包"在Visual Studio中,只在GUI中列出0.13.4。我不得不手动编辑bower.json文件中的版本,然后一切正常。