MCPcopy Index your code
hub / github.com/wavetermdev/waveterm / UseEffect

Function UseEffect

tsunami/engine/hooks.go:124–151  ·  view source on GitHub ↗
(vc *RenderContextImpl, fn func() func(), deps []any)

Source from the content-addressed store, hash-verified

122}
123
124func UseEffect(vc *RenderContextImpl, fn func() func(), deps []any) {
125 hookVal := vc.getOrderedHook()
126 compTag := ""
127 if vc.Comp != nil {
128 compTag = vc.Comp.Tag
129 }
130 if !hookVal.Init {
131 hookVal.Init = true
132 hookVal.Fn = fn
133 hookVal.Deps = deps
134 vc.Root.addEffectWork(vc.GetCompWaveId(), hookVal.Idx, compTag)
135 return
136 }
137 // If deps is nil, always run (like React with no dependency array)
138 if deps == nil {
139 hookVal.Fn = fn
140 hookVal.Deps = deps
141 vc.Root.addEffectWork(vc.GetCompWaveId(), hookVal.Idx, compTag)
142 return
143 }
144
145 if depsEqual(hookVal.Deps, deps) {
146 return
147 }
148 hookVal.Fn = fn
149 hookVal.Deps = deps
150 vc.Root.addEffectWork(vc.GetCompWaveId(), hookVal.Idx, compTag)
151}
152
153func UseResync(vc *RenderContextImpl) bool {
154 if vc.RenderOpts == nil {

Callers 1

UseEffectFunction · 0.92

Calls 4

getOrderedHookMethod · 0.80
addEffectWorkMethod · 0.80
GetCompWaveIdMethod · 0.80
depsEqualFunction · 0.70

Tested by

no test coverage detected