Options
All
  • Public
  • Public/Protected
  • All
Menu

模板 AST 处理器 该 class 可以在两端(node, browser)运行

Hierarchy

  • TemplateHandler

Index

Constructors

constructor

Properties

ast

ast: ASTElement

code

code: string

options

Methods

findByPosition

  • findByPosition(position: number | { character: number; line: number }): compiler.ASTNode

findByRoute

  • findByRoute(route: string, node: compiler.ASTNode): compiler.ASTNode
  • 根据路径查找子节点

    examples
    • findByRoute('', root) 指根节点本身
    • findByRoute('/', root) 指根节点本身
    • findByRoute('/0', root) 指第0个子节点
    • findByRoute('/2/1', root) 指第2个子节点的第1个子节点

    Parameters

    • route: string

      节点路径,/1/2 表示根节点的第1个子节点的第2个子节点

    • node: compiler.ASTNode

      查找的起始节点

    Returns compiler.ASTNode

generate

generateElement

  • generateElement(el: ASTElement, level: number, options: TemplateOptions): string

merge

  • merge(that: TemplateHandler, route: string | number | { character: number; line: number }, replacements?: {}): void
  • 将另一个 that 的模板合并到当前模板中

    Parameters

    • that: TemplateHandler

      另一个 TemplateHandler

    • route: string | number | { character: number; line: number }

      插入的节点路径,最后一位表示节点位置,为空表示最后,比如 /1/2/1 表示插入到根节点的第1个子节点的第2个子节点的第1个位置

      • merge(that, '') 指根节点本身
      • merge(that, '/') 指根节点本身
      • merge(that, '/0') 指第0个子节点
      • merge(that, '/2/1') 指第2个子节点的第1个子节点
      • merge(that, '/2/') 指第2个子节点的最后
    • Optional replacements: {}

      需要跟着替换的样式和变量

      • [key: string]: {}
        • [old: string]: string

    Returns void

parse

  • parse(code: string): ASTElement

traverse

Generated using TypeDoc