bootstrap carousel作为angular.dart组件?

时间:2014-01-28 13:22:40

标签: dart angular-dart shadow-dom

我正在尝试在angular.dart组件中使用bootstrap的轮播。这是html:

<div id="carousel" class="carousel slide" data-ride="carousel">
  <!-- Indicators -->
  <ol ng-repeat="pic in ctrl.pics" class="carousel-indicators">
    <li data-target="#carousel" data-slide-to="{{ $index }}" ng-class="{ active: {{$first}} }"></li>
  </ol>
  <!-- Slides -->
  <div ng-repeat="pic in ctrl.pics" class="carousel-inner">
    <div class="item" ng-class="{ active: {{$first}} }">
      <img src="{{ ctrl.pic.image }}">
      <div class="carousel-caption">{{ ctrl.pic.title }}</div>
    </div>
  </div>
  <!-- Controls -->
  <a id="carousel-control-left" class="left carousel-control" href="#carousel" data-slide="prev">
    <span class="glyphicon glyphicon-chevron-left"></span>
  </a>
  <a id="carousel-control-right" class="right carousel-control" href="#carousel" data-slide="next">
    <span class="glyphicon glyphicon-chevron-right"></span>
  </a>
</div>

prev / next控件不起作用(也可能是其他的),可能是因为href属性错误。我尝试通过在运行时更新href来修复它们,但我不知道如何输入指向阴影dom内的id的URL。

或者,我尝试添加使用dart:js来调用carousel('prev')和carousel('next')引导函数的事件监听器。这种方法也失败了,因为我不知道如何将dom根引用从dart传递给javascript。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

可能有两个问题:

  • JavaScript尝试querySelect()一个元素但找不到它,因为它隐藏在shadowDOM中
    • 您可以更改JavaScript代码
  • CSS无效,因为您尚未将applyAuthorStyles: true添加到AngularDart组件中。

目前Angular UI Bootstrap组件正被移植到Angular Dart
https://github.com/akserg/angular.dart.ui
Carousel还没有工作AFAIK