@joker.front/ast
TypeScript icon, indicating that this package has built-in type declarations

1.3.22 • Public • Published

Joker AST

概述

AST 是 Joker 中 template 的结构化数据,它最终会结合组件实例来渲染出虚拟 Node,并将虚拟 Node 渲染到对应平台中。

它的来源有两种:

  • 通过 单文件组件(SFC) 中的 <template>标签来编写,编写规则请查看模板,并通过CLI转换为 AST.Node[]
  • 通过 Core 中提供的createText,createCommand等方法使用js语法输出 AST.Node[],并设置到组件 template 属性中。template 属性可查看组件属性中的 template 属性介绍。

两种形式都可以输出 AST.Node[],AST.Node 是 AST 的基础类模型,按照功能划分为:Text,Element,Comment,Component四种类型。其中 AST.Node 作为基础模型类,它本身具有以下属性:

属性名 说明 类型
childrens 子集 AST.Node[]
type 类型 NodeType

可通过判断 type 值来确定当前 AST.Node 的类型:

//该枚举可通过AST.NodeType获得
export enum NodeType {
    TEXT, //文本
    COMMENT, //注释
    ELEMENT, //标签
    COMMAND, //指令
    COMPONENT //动态组件
}

//例如:
item.type === AST.NodeType.COMMENT;

文档

官网

帮助文档

Readme

Keywords

Package Sidebar

Install

npm i @joker.front/ast

Homepage

jokers.pub

Weekly Downloads

6

Version

1.3.22

License

MIT

Unpacked Size

50.1 kB

Total Files

13

Last publish

Collaborators

  • joker.zohar