【发布时间】:2019-03-21 04:16:09
【问题描述】:
我是 Angular 和 Bootstrap 的新手,所以如果这个问题有点基本而且有点广泛,请提前道歉。
出于测试/学习目的,我正在尝试将 https://ng-bootstrap.github.io/#/components/dropdown/examples 中的 "Mixed menu items and form 'Toggle Dropdown'" Stackblitz 示例移植到我的新项目中,虽然我可以让 HTML 呈现,但我无法让下拉按钮切换.
我尝试了两种方法:
我创建了一个项目,然后将 Stackblitz 集合中的相关 src/app 文件复制到项目的 src/app 文件夹中(即
app.component.html、app.component.ts、app.module.ts、dropdown-form.html,dropdown-form.ts)。在这种方法下,HTML 呈现,但下拉菜单没有切换。作为第二次尝试,我尝试将整个 Stackblitz 集合复制到其自己的文件夹中,并尝试在其上运行
ng serve。在这种方法下,什么都没有编译,并且有很多错误消息,以Could not find module "@angular-devkit/build-angular" . . .开头
我有一个特别的问题是ngbDropdownToggle 指令驻留在哪里?
即来自dropdown-form.html:
<button class="btn btn-outline-primary" id="dropdownForm1" ngbDropdownToggle>Toggle dropdown</button>
在 Stackblitz 上,我注意到 package.json 中有 "@ng-bootstrap/ng-bootstrap" 的依赖项,并想知道 ngbDropdownToggle 指令是否驻留在那里,但是当我尝试将该依赖项添加到我原始项目的 package.json 文件中时,编译器抱怨:Module not found: Error: Can't resolve '@ng-bootstrap/ng-bootstrap'。我的工作假设是我的原始项目缺少一些关键的ng-bootstrap 导入/功能,但我不确定这是否正确,如果是,我该如何添加必要的导入/功能?
如果有人对我如何移植 Stackblitz 文件并使下拉切换工作有任何想法,请提前非常感谢。 . .
【问题讨论】:
-
添加依赖后,你运行npm install了吗?这应该可以解决您的 devkit 和 ng-bootstrap 错误。
标签: angular dropdown ng-bootstrap