光滑轮播错误:null不是对象(评估'b。$ slides.add')

时间:2016-06-27 22:28:59

标签: javascript ruby-on-rails angularjs slick.js

我正在使用光滑的旋转木马并得到了上一个错误。我正在使用angular指令来设置可自定义轮播的元素。

      .day-slider.ng-hide{"ng-show"=> "true", "carousel" => "", "center-mode" => "false", "slides-to-scroll" => "3", "autoplay" => "false", "initial-slide" => @presenter.day - 1, "rtl" => "#{is_rtl? ? 'true' : 'false'}", "dir" => "#{is_rtl? ? 'rtl' : 'ltr'}", "arrows" => "false"}

我在github的一篇文章中看到有人修复了unslick()元素,然后尝试光滑()它。

我也看到它与使用自定义箭头有关,但即使在配置中关闭箭头时我也收到了错误。这个相同的设置适用于另一个页面,这是错误的相当混淆。

这些修补程序都没有对我有用,除此之外,我还没有在其他任何地方看到这个问题。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:2)

事实证明,旋转木马试图在DOM准备好之前应用。

添加$ timeout函数最终解决了许多光滑错误,包括此问题的错误。

          controller: ["$element", "$scope", "$timeout", function($element, $scope, $timeout) {
            $timeout( function() {
               // your carousel code
            )};
          }]

相关:Slick Carousel with Angular JS