AngularJS - изменяет текст непрерывно из массива строк

0

Есть ли способ имитировать карусель текста в моем угловом контроллере?

Такие как:

 //html 
 <span> {{ notes }}</span>

 //angular controller

   var i = 0;
   var array = ["A", "B", "C", "D", "E"];

   while (true) {
       $scope.notes = array[i];
       i = i + 1;
       if (i = array.length - 1) {
           i = 0;
       }
   }

Есть ли способ сделать это без бесконечного цикла? Я пытаюсь создать карусель текста по вертикали и вывести анимацию в класс CSS, чтобы попытаться выполнить это.

Теги:
carousel

2 ответа

1
Лучший ответ

Я считаю, что вы ищете $ interval.

var i = 0;
var array = ['A', 'B', 'C', 'D', 'E'];

$interval(function () {
  $scope.notes = array[i++ % array.length];
}, 1000);

См. Пример здесь: https://jsfiddle.net/8pLwjybf/3/

0

Я бы использовал setInterval вместо бесконечного цикла и использовал%, чтобы обернуть индекс

var i = 0;
var array = ["A", "B", "C", "D", "E"];

function next() {
  var idx = ++i % array.length;
  $scope.notes = array[idx];
}

setInterval(next, someTime);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню