mirror of
https://github.com/misode/misode.github.io.git
synced 2026-04-25 08:06:51 +00:00
Update model and add invalidated cycle
This commit is contained in:
@@ -1,14 +1,20 @@
|
||||
import { DataModel } from "../model/DataModel"
|
||||
import { Path } from "../model/Path"
|
||||
import { DataModel, ModelListener } from "../model/DataModel"
|
||||
|
||||
export class SourceView {
|
||||
export class SourceView implements ModelListener {
|
||||
model: DataModel
|
||||
target: HTMLElement
|
||||
|
||||
constructor(model: DataModel) {
|
||||
constructor(model: DataModel, target: HTMLElement) {
|
||||
this.model = model
|
||||
this.target = target
|
||||
model.addListener(this)
|
||||
}
|
||||
|
||||
render(target: HTMLElement) {
|
||||
target.textContent = this.model.schema.transform(this.model.data)
|
||||
render() {
|
||||
this.target.textContent = this.model.schema.transform(this.model.data)
|
||||
}
|
||||
|
||||
invalidated() {
|
||||
this.render()
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user