模板语法

tyre会根据配置的模板路径,去找到 template.tpl模板文件,读取并解析。

结构补全

因为工具最终生成的是vue组件,所以如果定义的模板文件中缺少对应的结构,工具会自动补上。

完整结构示例:

<template>
    ... 
</template>
<script>
import xx from 'xxx'
export default {
    components: {
        ...
    },
    data () {
        return {
            ...
            formData: { ... },
            rules: { ... }
        }
    }
}
</script>

语法解析

tyre使用“<% %>”作为占位符,可在其中嵌入任何的JS语句

示例:

# 模板内容

<template>
    <% for (var i = 1; i <= 3; i++) { %>
        <div> 示例1 </div>
    <% } %>
</template>

-----------------------------分隔线------------------------------

# 解析结果:

<template>
        <div> 示例1 </div>
        <div> 示例1 </div>
        <div> 示例1 </div>
</template>

变量插值

tyre使用“<%= %>”作为变量的插值语句

示例:

# 模板内容

<template>
    <% for (var i = 1; i <= 3; i++) { %>
        <div> 示例<%= i %> </div>
    <% } %>
</template>

-----------------------------分隔线------------------------------

# 解析结果:

<template>
        <div> 示例1 </div>
        <div> 示例2 </div>
        <div> 示例3 </div>
</template>

组件引入

tyre使用“<%# %>”作为组件的引入方式

组件的引入,需要在模板数据文件中,配置好引入组件的相关信息

定义模板数据

后续的示例都是依据这个模板数据来进行展示

# data.json

{
    comp: {
        "name": "input",
        "value: "val",
        "placeholder": "请输入..."
    }
}
显示引入

显示引入是显示的调用配置中组件的属性,通过“|”分隔来区分多个属性。第一个属性作为组件的名字,后面属性根据属性名相应的绑定到组件上

# 显示引入示例模板内容

<template>
        <!-- 普通显示引入 --> 
        <%# comp.name|comp.value %>

        <!-- 带结束标签的方式1 -->   
        <%# comp.name|comp.value /%>

        <!-- 带结束标签的方式2 -->   
        <%# comp.name|comp.value %>
                组件间内容
        <%# /comp.name %> 
</template>

-----------------------------分隔线------------------------------

# 解析结果:

<template>
        <!-- 普通引显示引入 --> 
        <input v-model="val">

        <!-- 带结束标签的方式1 -->  
        <input v-model="val"></input>

        <!-- 带结束标签的方式2 -->   
        <input v-model="val">
                组件间内容
        </input>
</template>
直接引入

直接引入是直接调用配置中组件对象,如果组件的属性比较多就不用费劲的一个个调用了

# 直接引入示例模板内容

<template>
        <!-- 普通直接引入 --> 
        <%# comp %>

        <!-- 带结束标签的方式1 -->   
        <%# comp /%>

        <!-- 带结束标签的方式2 -->   
        <%# comp %>
                组件间内容
        <%# /comp %> 
</template>

-----------------------------分隔线------------------------------

# 解析结果:

<template>
        <!-- 普通引显示引入 --> 
        <input v-model="val" placeholder="请输入...">

        <!-- 带结束标签的方式1 -->  
        <input v-model="val" placeholder="请输入..."></input>

        <!-- 带结束标签的方式2 -->   
        <input v-model="val" placeholder="请输入...">
                组件间内容
        </input>
</template>

模板数据中“name” 和 “value” 其实是tyre的关键字段名,更多的字段解释请阅读:模板数据

results matching ""

    No results matching ""