I have this viewModel:
import app = require(\"durandal/app\");
import appViewModel = require(\"appViewModel\");
import dataService = require(\"dataService\");
c
You could also do then(this.activateView.bind(this))
Since you are passing the function to someone else to call in .then(this.activateView);
you need to preserve the context yourself, best if you do : .then((view)=>this.activateView(view));
More about this
: https://www.youtube.com/watch?v=tvocUcbCupA
While you have your answer, the way I prefer is a bit different:
convert function/method definition - into "property referencing function"
// instead of class method
// public activateView(view) {
// use the "property"
public activateView = (view) => {
this.activeScreen(view);
}
That will reduce the need to pass explicit params like this
.then((view) => this.activateView(view))
because this will work again:
.then(this.activateView)