htmlParse and virtualDom diff
npm install elmer-virtual-dom html
>
> {{item.title}}-{{myIndex}}
>
> `
- em:for属性列表渲染,当前属性为兼容旧代码而保留,不建议使用
> 使用语法: em:for="let item in this.listData", this.listData指向列表循环数据,item为循环内部元素调用数据变量
- 属性:em:前缀,除em:for以外,表示值是从组件获取或者值是判断类型,
> 1. 条件判断语法: eq(==), neq(!=),seq(===), sneq(!==),lt(<),gt(>),lteq(<=),gteq(>=)
> 2. 判断前后变量等用空格分隔开
> 3. 示例: em:show="this.listData.length seq 5", 解析代码为: em:show="this.listData.length === 5"
> 4. Lamada语法: em:show="testValue eq 3 ? 'true' : 'false'"
- 绑定文本语法
> 1. 普通文本绑定:{{state.title}}
> 2. 获取不到值设置默认值: {{state.title || 'default'}},当state.title的值为undefeined或者null时,当前绑定内容"default"
> 3. 绑定方法,渲染绑定方法返回的结果: {{this.exampleAction('A',2)}}
> ` html
>
> {{state.title}}
> {{state.title || 'default'}}
> {{this.exampleAction('A',2)}}
>
> `
> 4. Lambda表达式绑定, {{demo.level % 2 eq 0 ? 'true' : 'false'}}, 不支持嵌套使用
- 事件绑定
> et:eventName
- 自定义组件嵌套
自定义组件内部使用 或 用于接收子组件
引用自定义组件
` typescript
import { useComponent } from "elmer-ui-core";
const Button = () => {
return ;
};
const MutilLayout = () => {
return ;
};
const App = () => {
useComponent("Button", Button);
useComponent("Layout", MutilLayout);
return ;
};
``