Add context to ViewModel
This commit is contained in:
2
doric-js/lib/src/pattern/mvvm.d.ts
vendored
2
doric-js/lib/src/pattern/mvvm.d.ts
vendored
@@ -1,10 +1,12 @@
|
||||
import { Group } from "../ui/view";
|
||||
import { Panel } from "../ui/panel";
|
||||
import { BridgeContext } from "../runtime/global";
|
||||
export declare abstract class ViewHolder {
|
||||
abstract build(root: Group): void;
|
||||
}
|
||||
export declare type Setter<M> = (state: M) => void;
|
||||
export declare abstract class ViewModel<M extends Object, V extends ViewHolder> {
|
||||
context: BridgeContext;
|
||||
private state;
|
||||
private viewHolder;
|
||||
constructor(obj: M, v: V);
|
||||
|
@@ -29,6 +29,7 @@ export class VMPanel extends Panel {
|
||||
build(root) {
|
||||
this.vh = new (this.getViewHolderClass());
|
||||
this.vm = new (this.getViewModelClass())(this.getState(), this.vh);
|
||||
this.vm.context = this.context;
|
||||
this.vm.attach(root);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user