markStatic() — vue Function Reference
Architecture documentation for the markStatic() function in optimizer.ts from the vue codebase.
Entity Profile
Dependency Diagram
graph TD 9fc163b0_7973_42d1_4dec_178d72bbafa1["markStatic()"] c66d4aaa_9814_c96c_1d3f_ef17ed6ab384["optimizer.ts"] 9fc163b0_7973_42d1_4dec_178d72bbafa1 -->|defined in| c66d4aaa_9814_c96c_1d3f_ef17ed6ab384 53eb02a0_e5cc_b010_2d4d_1ad77bf5eb9c["optimize()"] 53eb02a0_e5cc_b010_2d4d_1ad77bf5eb9c -->|calls| 9fc163b0_7973_42d1_4dec_178d72bbafa1 52c32634_36a9_cf7b_cb3e_b809636e8a93["isStatic()"] 9fc163b0_7973_42d1_4dec_178d72bbafa1 -->|calls| 52c32634_36a9_cf7b_cb3e_b809636e8a93 style 9fc163b0_7973_42d1_4dec_178d72bbafa1 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
src/compiler/optimizer.ts lines 40–70
function markStatic(node: ASTNode) {
node.static = isStatic(node)
if (node.type === 1) {
// do not make component slot content static. this avoids
// 1. components not able to mutate slot nodes
// 2. static slot content fails for hot-reloading
if (
!isPlatformReservedTag(node.tag) &&
node.tag !== 'slot' &&
node.attrsMap['inline-template'] == null
) {
return
}
for (let i = 0, l = node.children.length; i < l; i++) {
const child = node.children[i]
markStatic(child)
if (!child.static) {
node.static = false
}
}
if (node.ifConditions) {
for (let i = 1, l = node.ifConditions.length; i < l; i++) {
const block = node.ifConditions[i].block
markStatic(block)
if (!block.static) {
node.static = false
}
}
}
}
}
Domain
Subdomains
Defined In
Calls
Called By
Source
Frequently Asked Questions
What does markStatic() do?
markStatic() is a function in the vue codebase, defined in src/compiler/optimizer.ts.
Where is markStatic() defined?
markStatic() is defined in src/compiler/optimizer.ts at line 40.
What does markStatic() call?
markStatic() calls 1 function(s): isStatic.
What calls markStatic()?
markStatic() is called by 1 function(s): optimize.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free