genSSRElement() — vue Function Reference
Architecture documentation for the genSSRElement() function in codegen.ts from the vue codebase.
Entity Profile
Dependency Diagram
graph TD c9c89a7e_a7ef_371a_0bb1_ccb05926e1f2["genSSRElement()"] 24d38a9f_c51d_3154_83fb_40e61e6ab136["generate()"] 24d38a9f_c51d_3154_83fb_40e61e6ab136 -->|calls| c9c89a7e_a7ef_371a_0bb1_ccb05926e1f2 3e4f99aa_7e87_0706_fb7b_464f106ea018["genSSRNode()"] 3e4f99aa_7e87_0706_fb7b_464f106ea018 -->|calls| c9c89a7e_a7ef_371a_0bb1_ccb05926e1f2 57deee28_aac6_0fbe_7eff_db2c78f58dbf["genFor()"] c9c89a7e_a7ef_371a_0bb1_ccb05926e1f2 -->|calls| 57deee28_aac6_0fbe_7eff_db2c78f58dbf e458f6c9_a80f_c2c4_a63b_541be2a8b2b9["genIf()"] c9c89a7e_a7ef_371a_0bb1_ccb05926e1f2 -->|calls| e458f6c9_a80f_c2c4_a63b_541be2a8b2b9 3cd1373c_a2c0_adeb_be13_1bf1ff92c1e2["genChildrenAsStringNode()"] c9c89a7e_a7ef_371a_0bb1_ccb05926e1f2 -->|calls| 3cd1373c_a2c0_adeb_be13_1bf1ff92c1e2 90946362_1dcc_09cf_deab_4dd92fd90376["genSSRChildren()"] c9c89a7e_a7ef_371a_0bb1_ccb05926e1f2 -->|calls| 90946362_1dcc_09cf_deab_4dd92fd90376 da9cc827_8b35_0376_d4b9_150019733eba["genStringElement()"] c9c89a7e_a7ef_371a_0bb1_ccb05926e1f2 -->|calls| da9cc827_8b35_0376_d4b9_150019733eba 31022e41_9356_bc1a_19ac_a481181c0824["genStringElementWithChildren()"] c9c89a7e_a7ef_371a_0bb1_ccb05926e1f2 -->|calls| 31022e41_9356_bc1a_19ac_a481181c0824 b3b5fa63_0571_9c9e_f75f_7175c7581d45["genNormalElement()"] c9c89a7e_a7ef_371a_0bb1_ccb05926e1f2 -->|calls| b3b5fa63_0571_9c9e_f75f_7175c7581d45 4cfaef88_0bc8_30fc_0a01_09b4149fd58c["genElement()"] c9c89a7e_a7ef_371a_0bb1_ccb05926e1f2 -->|calls| 4cfaef88_0bc8_30fc_0a01_09b4149fd58c style c9c89a7e_a7ef_371a_0bb1_ccb05926e1f2 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/server-renderer/src/optimizing-compiler/codegen.ts lines 50–78
function genSSRElement(el: ASTElement, state: CodegenState): string {
if (el.for && !el.forProcessed) {
return genFor(el, state, genSSRElement)
} else if (el.if && !el.ifProcessed) {
return genIf(el, state, genSSRElement)
} else if (el.tag === 'template' && !el.slotTarget) {
return el.ssrOptimizability === optimizability.FULL
? genChildrenAsStringNode(el, state)
: genSSRChildren(el, state) || 'void 0'
}
switch (el.ssrOptimizability) {
case optimizability.FULL:
// stringify whole tree
return genStringElement(el, state)
case optimizability.SELF:
// stringify self and check children
return genStringElementWithChildren(el, state)
case optimizability.CHILDREN:
// generate self as VNode and stringify children
return genNormalElement(el, state, true)
case optimizability.PARTIAL:
// generate self as VNode and check children
return genNormalElement(el, state, false)
default:
// bail whole tree
return genElement(el, state)
}
}
Domain
Subdomains
Calls
Called By
Source
Frequently Asked Questions
What does genSSRElement() do?
genSSRElement() is a function in the vue codebase.
What does genSSRElement() call?
genSSRElement() calls 8 function(s): genChildrenAsStringNode, genElement, genFor, genIf, genNormalElement, genSSRChildren, genStringElement, genStringElementWithChildren.
What calls genSSRElement()?
genSSRElement() is called by 2 function(s): genSSRNode, generate.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free