Angular 4 установить случайное значение строки из массива в шаблон и изменить на другую строку через две секунды - PullRequest
0 голосов
/ 03 мая 2020

Я работаю над загрузочным экраном, где он переходит между массивом слов. Кажется, я не могу заставить Math.random работать, поскольку мое значение глагола всегда заканчивается на 0. Оно также никогда не обновляет страницу и не изменяет значение после задержки, даже если я установил обновленный глагол в updateWord () на [1].

verbList = ['item1', 'item2', 'item3'];
verb = '';

ngOnInit () {
const wordWait = 2000;
verb = this.verbList[Math.floor(Math.random()) * this.verbList.Length];
setTimeout(() => this.updateWord(), wordWait);
}

updateWord () {
verb = this.verbList[Math.floor(Math.random()) * this.verbList.Length];
}

1 Ответ

0 голосов
/ 03 мая 2020

В вашем коде есть некоторые ошибки. Проблема в том, что вы должны умножить перед применением Math.floor()

this.verb = this.verbList[Math.floor(Math.random() * this.verbList.length)];

Вот пример: https://stackblitz.com/edit/angular-random-generator-string?file=src / app / app.component.ts

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...