Templates class

LG 入口,包括 LG 文件具有的属性和评估函数。

构造函数

Templates(Template[], TemplateImport[], Diagnostic[], Templates[], string, string, ExpressionParser, ImportResolverDelegate, string[], string, Record<string, Templates>)

创建 Templates 类的新实例。

属性

allDiagnostics

从当前 lg 文件和引用 lg 文件获取所有诊断。

allTemplates

从当前 lg 文件获取所有模板并引用 lg 文件。

content

LG 内容。

diagnostics

诊断。

enableFromFile

指示是否允许在 LG 模板中使用 fromFile。

expressionParser

表达式分析程序。

id

lg 资源的 ID。

importResolver

用于解析导入的 lg 文件的资源 ID 的委托。

imports

导入此 LG 文件直接包含的元素。

inlineTemplateIdPrefix

内联内容的临时模板 ID。

lgOptions

获取当前 LG 文件的重新生成选项。 @returns 一个值,该值指示评估 LG 模板时是否具有选项。

namedReferences

从导入别名映射到模板。

namespace

获取要为当前 LG 文件注册的命名空间。 @returns 一个字符串值,表示要为当前 LG 文件注册的命名空间。

options

LG 文件选项。

references

此 LG 文件从 Imports otice 获得的所有引用:引用包括来自 lg 文件的所有子导入,而不仅仅是子级直接属于此 lgfile。 因此,引用计数可能 >= 导入计数。

source

lg 资源的源。 lg 文件的完整路径。

方法

addTemplate(string, string[], string)

添加新模板并返回 LG 文件。

analyzeTemplate(string, AnalyzerOptions)

分析模板以获取静态分析器结果,包括变量和模板引用。

deleteTemplate(string)

删除现有模板。

evaluate(string, object, EvaluationOptions)

评估具有给定名称和范围的模板。

evaluateText(string, object, EvaluationOptions)

使用 评估内联模板 str。

expandTemplate(string, object, EvaluationOptions)

使用给定名称和范围展开模板。 返回所有可能的响应,而不是随机响应。

parseFile(string, ImportResolverDelegate, ExpressionParser)

分析文件并返回 LG 文件。

parseResource(LGResource, ImportResolverDelegate, ExpressionParser)

分析程序,用于将 lg 内容转换为模板。

parseText(string, string, ImportResolverDelegate, ExpressionParser)

分析程序,用于将 lg 内容转换为模板。

push(Template[])

将 1 个或多个模板追加到集合。

toArray()

获取模板的集合。

toString()

返回 Templates 内容的字符串表示形式。

updateTemplate(string, string, string[], string)

更新模板并返回 LG 文件。

构造函数详细信息

Templates(Template[], TemplateImport[], Diagnostic[], Templates[], string, string, ExpressionParser, ImportResolverDelegate, string[], string, Record<string, Templates>)

创建 Templates 类的新实例。

new Templates(items?: Template[], imports?: TemplateImport[], diagnostics?: Diagnostic[], references?: Templates[], content?: string, id?: string, expressionParser?: ExpressionParser, importResolverDelegate?: ImportResolverDelegate, options?: string[], source?: string, namedReferences?: Record<string, Templates>)

参数

items

Template[]

可选。 模板实例列表。

imports

TemplateImport[]

可选。 TemplateImport 实例的列表。

diagnostics

Diagnostic[]

可选。 诊断实例列表。

references

Templates[]

可选。 模板实例的列表。

content

string

可选。 当前 Templates 实例的内容。

id

string

可选。 当前模板实例的 ID。

expressionParser

ExpressionParser

可选。 ExpressionParser ,用于分析内容中的表达式。

importResolverDelegate
ImportResolverDelegate

可选。 解析程序,用于将 LG 导入 ID 解析为模板文本。

options

string[]

可选。 表示模板评估期间选项的字符串列表。

source

string

可选。 模板源。

namedReferences

Record<string, Templates>

可选。 使用“as”语法导入的引用,例如: import 作为 myAlias。

属性详细信息

allDiagnostics

从当前 lg 文件和引用 lg 文件获取所有诊断。

Diagnostic[] allDiagnostics

属性值

来自当前 lg 文件和引用 lg 文件的所有诊断。

allTemplates

从当前 lg 文件获取所有模板并引用 lg 文件。

Template[] allTemplates

属性值

当前 lg 文件和引用 lg 文件中的所有模板。

content

LG 内容。

content: string

属性值

string

diagnostics

诊断。

diagnostics: Diagnostic[]

属性值

enableFromFile

指示是否允许在 LG 模板中使用 fromFile。

static enableFromFile: boolean = false

属性值

boolean

expressionParser

表达式分析程序。

expressionParser: ExpressionParser

属性值

ExpressionParser

id

lg 资源的 ID。

id: string

属性值

string

importResolver

用于解析导入的 lg 文件的资源 ID 的委托。

importResolver: ImportResolverDelegate

属性值

imports

导入此 LG 文件直接包含的元素。

imports: TemplateImport[]

属性值

inlineTemplateIdPrefix

内联内容的临时模板 ID。

static inlineTemplateIdPrefix: string = "__temp__"

属性值

string

lgOptions

获取当前 LG 文件的重新生成选项。 @returns 一个值,该值指示评估 LG 模板时是否具有选项。

EvaluationOptions lgOptions

属性值

namedReferences

从导入别名映射到模板。

namedReferences: Record<string, Templates>

属性值

Record<string, Templates>

namespace

获取要为当前 LG 文件注册的命名空间。 @returns 一个字符串值,表示要为当前 LG 文件注册的命名空间。

string namespace

属性值

string

options

LG 文件选项。

options: string[]

属性值

string[]

references

此 LG 文件从 Imports otice 获得的所有引用:引用包括来自 lg 文件的所有子导入,而不仅仅是子级直接属于此 lgfile。 因此,引用计数可能 >= 导入计数。

references: Templates[]

属性值

source

lg 资源的源。 lg 文件的完整路径。

source: string

属性值

string

方法详细信息

addTemplate(string, string[], string)

添加新模板并返回 LG 文件。

function addTemplate(templateName: string, parameters: string[], templateBody: string): Templates

参数

templateName

string

新模板名称。

parameters

string[]

新参数。

templateBody

string

新模板正文。

返回

新建 lg 文件。

analyzeTemplate(string, AnalyzerOptions)

分析模板以获取静态分析器结果,包括变量和模板引用。

function analyzeTemplate(templateName: string, analyzerOptions?: AnalyzerOptions): AnalyzerResult

参数

templateName

string

要评估的模板名称。

analyzerOptions
AnalyzerOptions

用于分析模板的选项。

返回

分析器结果。

deleteTemplate(string)

删除现有模板。

function deleteTemplate(templateName: string): Templates

参数

templateName

string

应删除哪个模板。

返回

返回新的 lg 文件。

evaluate(string, object, EvaluationOptions)

评估具有给定名称和范围的模板。

function evaluate(templateName: string, scope?: object, opt: EvaluationOptions): any

参数

templateName

string

要评估的模板名称。

scope

object

计算中可见的状态。

opt
EvaluationOptions

Evaluation在评估模板时选项。

返回

any

计算结果。

evaluateText(string, object, EvaluationOptions)

使用 评估内联模板 str。

function evaluateText(inlineStr: string, scope?: object, opt: EvaluationOptions): any

参数

inlineStr

string

将计算的内联字符串。

scope

object

Scope 对象或 JToken。

opt
EvaluationOptions

Evaluation在评估模板时选项。

返回

any

计算的结果对象。

expandTemplate(string, object, EvaluationOptions)

使用给定名称和范围展开模板。 返回所有可能的响应,而不是随机响应。

function expandTemplate(templateName: string, scope?: object, opt: EvaluationOptions): any[]

参数

templateName

string

要评估的模板名称。

scope

object

计算中可见的状态。

opt
EvaluationOptions

EvaluationOptions 中的展开模板。

返回

any[]

展开结果。

parseFile(string, ImportResolverDelegate, ExpressionParser)

分析文件并返回 LG 文件。

static function parseFile(filePath: string, importResolver?: ImportResolverDelegate, expressionParser?: ExpressionParser): Templates

参数

filePath

string

LG 绝对文件路径。

importResolver
ImportResolverDelegate

解析程序,用于将 LG 导入 ID 解析为模板文本。

expressionParser

ExpressionParser

用于计算表达式的表达式分析程序。

返回

新建 lg 文件。

parseResource(LGResource, ImportResolverDelegate, ExpressionParser)

分析程序,用于将 lg 内容转换为模板。

static function parseResource(resource: LGResource, importResolver?: ImportResolverDelegate, expressionParser?: ExpressionParser): Templates

参数

resource
LGResource

LG 资源。

importResolver
ImportResolverDelegate

解析程序,用于将 LG 导入 ID 解析为模板文本。

expressionParser

ExpressionParser

用于计算表达式的表达式分析程序。

返回

实体。

parseText(string, string, ImportResolverDelegate, ExpressionParser)

警告

现已弃用此 API。

This method will soon be deprecated. Use ParseResource instead.

分析程序,用于将 lg 内容转换为模板。

static function parseText(content: string, id: string, importResolver?: ImportResolverDelegate, expressionParser?: ExpressionParser): Templates

参数

content

string

文本内容包含 lg 模板。

id

string

ID 是内容的标识符。 如果 importResolver 未定义,则 id 必须是完整路径字符串。

importResolver
ImportResolverDelegate

解析程序,用于将 LG 导入 ID 解析为模板文本。

expressionParser

ExpressionParser

用于计算表达式的表达式分析程序。

返回

实体。

push(Template[])

将 1 个或多个模板追加到集合。

function push(args: Template[])

参数

args

Template[]

要添加的模板列表。

toArray()

获取模板的集合。

function toArray(): Template[]

返回

对集合模板内部列表的引用。

toString()

返回 Templates 内容的字符串表示形式。

function toString(): string

返回

string

模板内容的字符串表示形式。

updateTemplate(string, string, string[], string)

更新模板并返回 LG 文件。

function updateTemplate(templateName: string, newTemplateName: string, parameters: string[], templateBody: string): Templates

参数

templateName

string

Orignial 模板名称。

newTemplateName

string

新模板名称。

parameters

string[]

新参数。

templateBody

string

新模板正文。

返回

新建 lg 文件。