Home / Function/ elementToSegments() — vue Function Reference

elementToSegments() — vue Function Reference

Architecture documentation for the elementToSegments() function in codegen.ts from the vue codebase.

Entity Profile

Dependency Diagram

graph TD
  fab98570_5fb1_9215_7014_b249b0beadde["elementToSegments()"]
  4aaa14b9_d580_5a66_5221_1be3a11a7eed["codegen.ts"]
  fab98570_5fb1_9215_7014_b249b0beadde -->|defined in| 4aaa14b9_d580_5a66_5221_1be3a11a7eed
  d0dcabcf_7ec5_f5a5_9987_abfd69d3ab1f["elementToString()"]
  d0dcabcf_7ec5_f5a5_9987_abfd69d3ab1f -->|calls| fab98570_5fb1_9215_7014_b249b0beadde
  3305260c_9a97_7ffb_f077_598c0d28f4ff["nodesToSegments()"]
  3305260c_9a97_7ffb_f077_598c0d28f4ff -->|calls| fab98570_5fb1_9215_7014_b249b0beadde
  6b525ab7_8f33_9239_ab39_05dda7ea53e5["childrenToSegments()"]
  fab98570_5fb1_9215_7014_b249b0beadde -->|calls| 6b525ab7_8f33_9239_ab39_05dda7ea53e5
  9d3b67d4_d578_dee4_50a8_8ed82301c536["elementToOpenTagSegments()"]
  fab98570_5fb1_9215_7014_b249b0beadde -->|calls| 9d3b67d4_d578_dee4_50a8_8ed82301c536
  style fab98570_5fb1_9215_7014_b249b0beadde fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/server-renderer/src/optimizing-compiler/codegen.ts lines 119–149

function elementToSegments(el, state): Array<StringSegment> {
  // v-for / v-if
  if (el.for && !el.forProcessed) {
    el.forProcessed = true
    return [
      {
        type: EXPRESSION,
        value: genFor(el, state, elementToString, '_ssrList')
      }
    ]
  } else if (el.if && !el.ifProcessed) {
    el.ifProcessed = true
    return [
      {
        type: EXPRESSION,
        value: genIf(el, state, elementToString, '"<!---->"')
      }
    ]
  } else if (el.tag === 'template') {
    return childrenToSegments(el, state)
  }

  const openSegments = elementToOpenTagSegments(el, state)
  const childrenSegments = childrenToSegments(el, state)
  const { isUnaryTag } = state.options
  const close =
    isUnaryTag && isUnaryTag(el.tag)
      ? []
      : [{ type: RAW, value: `</${el.tag}>` }]
  return openSegments.concat(childrenSegments, close)
}

Subdomains

Frequently Asked Questions

What does elementToSegments() do?
elementToSegments() is a function in the vue codebase, defined in packages/server-renderer/src/optimizing-compiler/codegen.ts.
Where is elementToSegments() defined?
elementToSegments() is defined in packages/server-renderer/src/optimizing-compiler/codegen.ts at line 119.
What does elementToSegments() call?
elementToSegments() calls 2 function(s): childrenToSegments, elementToOpenTagSegments.
What calls elementToSegments()?
elementToSegments() is called by 2 function(s): elementToString, nodesToSegments.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free