genSSRElement() — vue Function Reference
Architecture documentation for the genSSRElement() function in codegen.ts from the vue codebase.
Entity Profile
Dependency Diagram
graph TD f524af7e_1682_aa62_bd3c_c1210416da99["genSSRElement()"] 4aaa14b9_d580_5a66_5221_1be3a11a7eed["codegen.ts"] f524af7e_1682_aa62_bd3c_c1210416da99 -->|defined in| 4aaa14b9_d580_5a66_5221_1be3a11a7eed d3fcbedd_5774_268b_b603_8b87daaea208["generate()"] d3fcbedd_5774_268b_b603_8b87daaea208 -->|calls| f524af7e_1682_aa62_bd3c_c1210416da99 57406dbb_3740_32bc_00ad_a3515b8c8ee6["genSSRNode()"] 57406dbb_3740_32bc_00ad_a3515b8c8ee6 -->|calls| f524af7e_1682_aa62_bd3c_c1210416da99 c9f5cd05_4bd2_e40a_83fa_edb34d6fd988["genChildrenAsStringNode()"] f524af7e_1682_aa62_bd3c_c1210416da99 -->|calls| c9f5cd05_4bd2_e40a_83fa_edb34d6fd988 9b3a663f_695e_152f_f435_63be2d53c2ef["genSSRChildren()"] f524af7e_1682_aa62_bd3c_c1210416da99 -->|calls| 9b3a663f_695e_152f_f435_63be2d53c2ef 57afbc82_ac26_5285_92dc_265f19fffcdb["genStringElement()"] f524af7e_1682_aa62_bd3c_c1210416da99 -->|calls| 57afbc82_ac26_5285_92dc_265f19fffcdb b16796bd_68b9_6a04_0a88_db0f3e9e23a9["genStringElementWithChildren()"] f524af7e_1682_aa62_bd3c_c1210416da99 -->|calls| b16796bd_68b9_6a04_0a88_db0f3e9e23a9 8de303a2_08ca_7ff7_cae1_7a27003c1764["genNormalElement()"] f524af7e_1682_aa62_bd3c_c1210416da99 -->|calls| 8de303a2_08ca_7ff7_cae1_7a27003c1764 style f524af7e_1682_aa62_bd3c_c1210416da99 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, defined in packages/server-renderer/src/optimizing-compiler/codegen.ts.
Where is genSSRElement() defined?
genSSRElement() is defined in packages/server-renderer/src/optimizing-compiler/codegen.ts at line 50.
What does genSSRElement() call?
genSSRElement() calls 5 function(s): genChildrenAsStringNode, 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