genSSRElement() — vue Function Reference
Architecture documentation for the genSSRElement() function in codegen.ts from the vue codebase.
Entity Profile
Dependency Diagram
graph TD 55398ede_0597_fb47_dd8c_edb8c5aacdad["genSSRElement()"] 4e39da40_6cb1_aa2b_3351_d7600a4f01d0["generate()"] 4e39da40_6cb1_aa2b_3351_d7600a4f01d0 -->|calls| 55398ede_0597_fb47_dd8c_edb8c5aacdad 1b01fbf2_a601_0ce6_3f9e_b35e44d0da24["genSSRNode()"] 1b01fbf2_a601_0ce6_3f9e_b35e44d0da24 -->|calls| 55398ede_0597_fb47_dd8c_edb8c5aacdad 6f9060e9_4d2c_0a9f_e876_7334660278e7["genFor()"] 55398ede_0597_fb47_dd8c_edb8c5aacdad -->|calls| 6f9060e9_4d2c_0a9f_e876_7334660278e7 e7c86dbc_f669_e04c_eae5_85c469684781["genIf()"] 55398ede_0597_fb47_dd8c_edb8c5aacdad -->|calls| e7c86dbc_f669_e04c_eae5_85c469684781 b513831f_74af_d452_c5fb_ed9ab7651ec4["genChildrenAsStringNode()"] 55398ede_0597_fb47_dd8c_edb8c5aacdad -->|calls| b513831f_74af_d452_c5fb_ed9ab7651ec4 685ec3ac_f3cb_a1f2_7038_724c16fd7095["genSSRChildren()"] 55398ede_0597_fb47_dd8c_edb8c5aacdad -->|calls| 685ec3ac_f3cb_a1f2_7038_724c16fd7095 b137a91c_5343_2845_a378_f5f09a089e40["genStringElement()"] 55398ede_0597_fb47_dd8c_edb8c5aacdad -->|calls| b137a91c_5343_2845_a378_f5f09a089e40 ea2f4f6d_abb0_6ddc_a8a6_21616cb106fa["genStringElementWithChildren()"] 55398ede_0597_fb47_dd8c_edb8c5aacdad -->|calls| ea2f4f6d_abb0_6ddc_a8a6_21616cb106fa f5f4a665_bd43_49ff_d458_cfda193ba027["genNormalElement()"] 55398ede_0597_fb47_dd8c_edb8c5aacdad -->|calls| f5f4a665_bd43_49ff_d458_cfda193ba027 ce806ab8_847b_273b_e07c_0a796c2f76ae["genElement()"] 55398ede_0597_fb47_dd8c_edb8c5aacdad -->|calls| ce806ab8_847b_273b_e07c_0a796c2f76ae style 55398ede_0597_fb47_dd8c_edb8c5aacdad 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