¿Por qué está mal esto?
markImportant({ Id: this.row.Id }) .then(this.showToast("success")) .catch(this.showToast("error"));¿Y esto es correcto?
markImportant({ Id: this.row.Id }) .then(() => { this.showToast("success"); }) .catch(() => { this.showToast("error"); });Estoy pasando una función como parámetro en ambos casos. El primer caso es solo una función, mientras que la segunda función es una función dentro de otra función como parámetro.
en .then(this.showToast("success")) está invocando la función showToast que creo que devuelve indefinido, por lo que no puede invocar undefined
en then(() => { this.showToast("success")}) está pasando una función que se puede invocar, por eso funciona