AngularJS - bootstrap popover,如何在 ng-repeat 中正确使用“popover-is-open”

AJ989

我有一个 ng-repeat,它在表中生成一个项目列表,每个项目在其行中有一个按钮,并且该按钮打开一个弹出窗口(以编辑对象)。

重要的是我不使用:click-outside引导弹出窗口的属性,因为此弹出窗口必须仅使用其中的按钮关闭。

所以在<div>具有 ng-repeat的 popover 声明的 html 代码中,我们有以下代码:

         <div class="popoverX" popover-class="popoverCustom" 
    popover-append-to-body="true" popover-placement="bottom-left"
         popover-is-open="vm.isEditPopoverOpen" 
uib-popover-template="'Views/xxx/popTemplate.htm'">

在控制器中,这是定义的:

 isEditPopoverOpen: boolean;

和我们在弹出窗口中的关闭函数,关闭它,是:

   closePopover() {
      this.loading = false;
      this.isEditPopoverOpen= false;      
    }    

所以当我们在 ng-repeat 中只返回一个项目时,一切都很好,但情况并非如此,所以目前,当您单击div打开弹出框的行时,每行的每个弹出框都会打开。

我明白为什么会发生这种情况,因为我使用的是相同的布尔值,但是解决方案是什么?

我需要保留此结构,因此必须仅使用按钮关闭弹出窗口,并且我想避免在 ng-repeat 中循环的数组中的对象上添加新属性,例如 : isOpened: boolean,然后将其用于打开/关闭。

如果有任何其他解决方案,我会很高兴听到他们的声音!

汤姆约翰逊

如果你真的不想在你的对象上分配新的属性,你可以像这样保留一个单独的打开/关闭弹出框数组;

vm.openedPopovers = [];

在您的标记中,您可以$index像这样在中继器中访问

<div class="popoverX" popover-class="popoverCustom" 
     popover-append-to-body="true" popover-placement="bottom-left"
     popover-is-open="vm.openedPopovers[$index]" 
     uib-popover-template="'Views/xxx/popTemplate.htm'">

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Bootstrap Popover在AngularJs ng-repeat内部不起作用

来自分类Dev

AngularJS-如何正确使用ng -repeat

来自分类Dev

如何在Angularjs ng-repeat中为div使用Bootstrap工具提示

来自分类Dev

当从ng-repeat中删除项目时,AngularJS UI Bootstrap popover outsideclick触发器会关闭弹出窗口

来自分类Dev

表中的角度UI弹出窗口(ng-repeat)。使用popover-is-open,如何阻止所有弹出窗口打开?

来自分类Dev

如何将bootstrap popover添加到Angular ng-repeat

来自分类Dev

如何使用嵌套的AngularJS ng-repeat使Bootstrap折叠正常工作?

来自分类Dev

如何在angularjs中正确使用ng-class?

来自分类Dev

AngularJS:如何在ng-repeat中使用$索引

来自分类Dev

AngularJS:如何在ng-repeat中使用$索引

来自分类Dev

如何在angularjs中使用ng-repeat

来自分类Dev

如何在ng-repeat中正确执行功能

来自分类Dev

如何在ng-repeat指令中正确使用ui-select

来自分类Dev

如何在AngularJS中使用ng-repeat动态生成ng-model =“ my _ {{$ index}}”“?

来自分类Dev

如何在angularjs中使用ng-click显示ng-repeat的确切内容

来自分类Dev

如何在不使用AngularJs的ng-repeat的情况下从下拉菜单(Bootstrap)中创建然后选择项目

来自分类Dev

angularjs如何使用ng-repeat创建div堆栈

来自分类Dev

如何使用MVC application ..在Angularjs中触发ng-repeat?

来自分类Dev

如何使用angularJs ng-repeat添加滚动条?

来自分类Dev

AngularJS如何使用ng-repeat $编译元素?

来自分类Dev

AngularJS-ng-repeat-如何使用ID创建数组

来自分类Dev

如何使用angularjs在ng-repeat中打印Json数据?

来自分类Dev

如何使用 angularjs 制作动态 ng-repeat?

来自分类Dev

AngularJS - 如何对使用 ng-repeat 创建的表进行排序

来自分类Dev

如何在angularjs应用程序中为Bootstrap Popover添加自定义标头

来自分类Dev

结合使用ng-repeat和Bootstrap和AngularJS的结构问题

来自分类Dev

AngularJS:Bootstrap 折叠仅针对使用 ng-repeat 的一个 <li> 元素

来自分类Dev

如何在angularJS中通过嵌套键值对正确ng-repeat

来自分类Dev

AngularJS和Bootstrap:ng-repeat导致列表丢失格式

Related 相关文章

  1. 1

    Bootstrap Popover在AngularJs ng-repeat内部不起作用

  2. 2

    AngularJS-如何正确使用ng -repeat

  3. 3

    如何在Angularjs ng-repeat中为div使用Bootstrap工具提示

  4. 4

    当从ng-repeat中删除项目时,AngularJS UI Bootstrap popover outsideclick触发器会关闭弹出窗口

  5. 5

    表中的角度UI弹出窗口(ng-repeat)。使用popover-is-open,如何阻止所有弹出窗口打开?

  6. 6

    如何将bootstrap popover添加到Angular ng-repeat

  7. 7

    如何使用嵌套的AngularJS ng-repeat使Bootstrap折叠正常工作?

  8. 8

    如何在angularjs中正确使用ng-class?

  9. 9

    AngularJS:如何在ng-repeat中使用$索引

  10. 10

    AngularJS:如何在ng-repeat中使用$索引

  11. 11

    如何在angularjs中使用ng-repeat

  12. 12

    如何在ng-repeat中正确执行功能

  13. 13

    如何在ng-repeat指令中正确使用ui-select

  14. 14

    如何在AngularJS中使用ng-repeat动态生成ng-model =“ my _ {{$ index}}”“?

  15. 15

    如何在angularjs中使用ng-click显示ng-repeat的确切内容

  16. 16

    如何在不使用AngularJs的ng-repeat的情况下从下拉菜单(Bootstrap)中创建然后选择项目

  17. 17

    angularjs如何使用ng-repeat创建div堆栈

  18. 18

    如何使用MVC application ..在Angularjs中触发ng-repeat?

  19. 19

    如何使用angularJs ng-repeat添加滚动条?

  20. 20

    AngularJS如何使用ng-repeat $编译元素?

  21. 21

    AngularJS-ng-repeat-如何使用ID创建数组

  22. 22

    如何使用angularjs在ng-repeat中打印Json数据?

  23. 23

    如何使用 angularjs 制作动态 ng-repeat?

  24. 24

    AngularJS - 如何对使用 ng-repeat 创建的表进行排序

  25. 25

    如何在angularjs应用程序中为Bootstrap Popover添加自定义标头

  26. 26

    结合使用ng-repeat和Bootstrap和AngularJS的结构问题

  27. 27

    AngularJS:Bootstrap 折叠仅针对使用 ng-repeat 的一个 <li> 元素

  28. 28

    如何在angularJS中通过嵌套键值对正确ng-repeat

  29. 29

    AngularJS和Bootstrap:ng-repeat导致列表丢失格式

热门标签

归档