mirror of
https://github.com/thomasnordquist/MQTT-Explorer.git
synced 2026-07-27 19:56:50 +00:00
19 lines
524 B
TypeScript
19 lines
524 B
TypeScript
import * as q from '../../../../../../backend/src/Model'
|
|
import { useEffect } from 'react'
|
|
import { TopicViewModel } from '../../../../model/TopicViewModel'
|
|
|
|
export function useViewModel(treeNode: q.TreeNode<TopicViewModel> | undefined) {
|
|
useEffect(() => {
|
|
if (treeNode && !treeNode?.viewModel) {
|
|
treeNode.viewModel = new TopicViewModel(treeNode)
|
|
}
|
|
treeNode?.viewModel?.retain()
|
|
|
|
return function cleanup() {
|
|
treeNode?.viewModel?.release()
|
|
}
|
|
}, [treeNode])
|
|
|
|
return treeNode?.viewModel
|
|
}
|