Angularjs 角度引导材料设计消除了ng重复中的涟漪效应

Angularjs 角度引导材料设计消除了ng重复中的涟漪效应,angularjs,twitter-bootstrap,material-design,bootstrap-material-design,Angularjs,Twitter Bootstrap,Material Design,Bootstrap Material Design,我在我的Angular应用程序中使用。 涟漪效应在整个应用程序中都能很好地发挥作用,不过当使用ng repeat时,我会失去涟漪效应 我在相同的中在ng repeat之外创建了一个项目,效果很好 这是因为ng repeat创建了一个新范围吗?如果是这样的话,我应该如何正确处理它 我的代码中有什么遗漏吗 {{data.title} 查看文档(非常有趣的项目btw),我可以看到您没有使用触发涟漪的类或标记。以下是默认设置: "withRipples": ".btn:not(.btn-link

我在我的Angular应用程序中使用。 涟漪效应在整个应用程序中都能很好地发挥作用,不过当使用
ng repeat
时,我会失去涟漪效应

我在相同的
中在
ng repeat
之外创建了一个项目,效果很好

这是因为ng repeat创建了一个新范围吗?如果是这样的话,我应该如何正确处理它

我的代码中有什么遗漏吗

  • {{data.title}

查看文档(非常有趣的项目btw),我可以看到您没有使用触发涟漪的类或标记。以下是默认设置:

"withRipples": ".btn:not(.btn-link), .card-image, .navbar a:not(.withoutripple), .nav-tabs a:not(.withoutripple), .withripple"

尝试添加
。withripple
类,或在li标签中使用按钮/a标签添加
组上的withripple
将对整个列表应用涟漪,但对单个元素应用涟漪不起作用。如果动态加载列表,则会在引导材质库初始化后创建重复的元素,因此涟漪不会应用于这些元素

要解决这个问题,我们必须将
.withripple
类添加到重复的元素中,然后在列表完成重复后初始化库,以便可以应用ripple。这可以使用角度指令轻松完成:

var app = angular.module('gradebook', []);
app.directive('repeatRipple', function() {
  return function(scope, element, attrs) {
    if (scope.$last) {
      return $.material.init();
    }
  };
});

...

<ul>
    <li ng-repeat="item in items" class="withripple" repeat-ripple>
<ul>
var-app=angular.module('gradebook',[]);
应用指令('repeatRipple',函数(){
返回函数(范围、元素、属性){
如果(范围$last){
返回$.material.init();
}
};
});
...

你说得对!将“.withripple”类添加到ul标签解决了这个问题。我在我的许多试验中使用过它,但由于某种原因将其移除,现在它可以工作了……你看过令人难以置信的棱角材料项目吗?强烈推荐你去看看。它可以做的比其他框架多得多:@staypuftman我在几天前发布的1.0版本之前尝试过使用它。我发现文档对我的知识来说有点欠缺,它们给出了一些示例,你可以从中学习,但是基本的布局结构是模糊的,如果你想从头开始,它就不像他们希望的那样友好