forked from mystiq/hydrogen-web
pass urlRouter and navigation as view model options
This commit is contained in:
parent
514095da7a
commit
5ab947e7de
1 changed files with 12 additions and 3 deletions
|
@ -22,15 +22,16 @@ import {EventEmitter} from "../utils/EventEmitter.js";
|
|||
import {Disposables} from "../utils/Disposables.js";
|
||||
|
||||
export class ViewModel extends EventEmitter {
|
||||
constructor({clock, emitChange} = {}) {
|
||||
constructor(options = {}) {
|
||||
super();
|
||||
this.disposables = null;
|
||||
this._isDisposed = false;
|
||||
this._options = {clock, emitChange};
|
||||
this._options = options;
|
||||
}
|
||||
|
||||
childOptions(explicitOptions) {
|
||||
return Object.assign({}, this._options, explicitOptions);
|
||||
const {navigation, urlRouter, clock} = this._options;
|
||||
return Object.assign({navigation, urlRouter, clock}, explicitOptions);
|
||||
}
|
||||
|
||||
track(disposable) {
|
||||
|
@ -90,4 +91,12 @@ export class ViewModel extends EventEmitter {
|
|||
get clock() {
|
||||
return this._options.clock;
|
||||
}
|
||||
|
||||
get urlRouter() {
|
||||
return this._options.urlRouter;
|
||||
}
|
||||
|
||||
get navigation() {
|
||||
return this._options.navigation;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue