Ваш this
относится к контексту функций replace
, а не к контексту метода vues
измените его следующим образом
return id.replace(someRegExp, (capture) => {
//...
if(cond) this.var2.push(id);
return `<a href='/post/${id}'></a>`
});
, чтобы контекст был правильно привязан. Или, альтернативно, сделайте это
const self=this;
return id.replace(someRegExp, function (capture) {
//...
if(cond) self.var2.push(id);
return `<a href='/post/${id}'></a>`
});