Это не проблема, а проблема "ЭТОГО" в JavaScript. Вы можете получить то, что вы хотите с этим кодом в методах.
change() {
this.item.foo.bind(this)();
}
В функции foo есть this.error
. Но это this
не связано с областью действия экземпляра. Таким образом, вы должны связать это в этой области, прежде чем позвонить.
И, кроме того, я не рекомендую вам изменять состояние в свойстве данных. Это может быть анти-шаблон.