Я пытаюсь выполнить итерацию каждого элемента массива через определенный интервал времени, например, 2 секунды, и отобразить его.Когда я пытаюсь это сделать, консоль успешно регистрируется, но когда я пытаюсь вставить его в msg
, чтобы достичь своей цели, я получаю ERROR TypeError: Cannot set property 'msg' of undefined at timer
Что-то не хватает или лучшее решение?
export class AuthPage {
public verifyPhone : string;
public collection = 'clients';
public data;
public user;
public response;
count : number;
msg : any[];
constructor(public navCtrl : NavController, public navParams : NavParams, public afs : AngularFirestore, public appService : AppServiceProvider, private alertCtrl : AlertController,) {
let messages=[
'Welcome to Fight Rabbit',
'We are going to ask you a few questions to help setup your account',
'What\'s your Phone Number?'
]
var interval = setInterval(function () {
timer()
}, 2000)
var count = 0;
function timer() {
this.msg=[];
if (count < messages.length) {
this.msg.push(messages[count])
console.log(messages[count],count)
count += 1
} else {
clearInterval(interval)
}
}
}
}