Home / Type/ ASTElement Type — vue Architecture

ASTElement Type — vue Architecture

Architecture documentation for the ASTElement type/interface in compiler.ts from the vue codebase.

Entity Profile

Dependency Diagram

graph TD
  f6ccae47_753f_9f5e_aaf4_459df4a47159["ASTElement"]
  155f72a7_8db4_5e38_a27c_e709852883ee["compiler.ts"]
  f6ccae47_753f_9f5e_aaf4_459df4a47159 -->|defined in| 155f72a7_8db4_5e38_a27c_e709852883ee
  style f6ccae47_753f_9f5e_aaf4_459df4a47159 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

src/types/compiler.ts lines 105–184

export type ASTElement = {
  type: 1
  tag: string
  attrsList: Array<ASTAttr>
  attrsMap: { [key: string]: any }
  rawAttrsMap: { [key: string]: ASTAttr }
  parent: ASTElement | void
  children: Array<ASTNode>

  start?: number
  end?: number

  processed?: true

  static?: boolean
  staticRoot?: boolean
  staticInFor?: boolean
  staticProcessed?: boolean
  hasBindings?: boolean

  text?: string
  attrs?: Array<ASTAttr>
  dynamicAttrs?: Array<ASTAttr>
  props?: Array<ASTAttr>
  plain?: boolean
  pre?: true
  ns?: string

  component?: string
  inlineTemplate?: true
  transitionMode?: string | null
  slotName?: string | null
  slotTarget?: string | null
  slotTargetDynamic?: boolean
  slotScope?: string | null
  scopedSlots?: { [name: string]: ASTElement }

  ref?: string
  refInFor?: boolean

  if?: string
  ifProcessed?: boolean
  elseif?: string
  else?: true
  ifConditions?: ASTIfConditions

  for?: string
  forProcessed?: boolean
  key?: string
  alias?: string
  iterator1?: string
  iterator2?: string

  staticClass?: string
  classBinding?: string
  staticStyle?: string
  styleBinding?: string
  events?: ASTElementHandlers
  nativeEvents?: ASTElementHandlers

  transition?: string | true
  transitionOnAppear?: boolean

  model?: {
    value: string
    callback: string
    expression: string
  }

  directives?: Array<ASTDirective>

  forbidden?: true
  once?: true
  onceProcessed?: boolean
  wrapData?: (code: string) => string
  wrapListeners?: (code: string) => string

  // 2.4 ssr optimization
  ssrOptimizability?: number
}

Frequently Asked Questions

What is the ASTElement type?
ASTElement is a type/interface in the vue codebase, defined in src/types/compiler.ts.
Where is ASTElement defined?
ASTElement is defined in src/types/compiler.ts at line 105.

Analyze Your Own Codebase

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

Try Supermodel Free