Difference between @observable and @bindable


#1

I saw the question asked several times, so maybe it’s time to put down something in discourse, as Gitter may not be suitable for retaining answers.

# @observable @bindable
1 Works any where Works in Aurelia templating context
2 Change handler {propertyName}Changed is called synchronously Change handler {propertyName}Changed is call asynchronously
3 Doesn't call propertyChanged(name, newValue, oldValue) Can call propertyChanged(name, newValue, oldValue)
4 Cannot be used to bind between custom elements Can be used to bind between custom elements