Aurelia:performance/efficiency 区别:在 repeat.for 中声明的视图元素与内联 DOM
Aurelia: performance/efficiency difference: declared view-elements vs inline DOM in repeat.for
在repeat.for中这两个选项之间是否存在性能或效率差异:
选项 1:内联元素
<div repeat.for="row of data">
<span>${row.title}</span>
<span>${row.someData}</span>
</div>
选项 2:自定义视图元素
<view-element repeat.for="row of data" row.bind="row"></view-element>
其中视图元素是:
查看-element.js
import { bindable } from 'aurelia-framework';
export class ViewElement {
@bindable row;
}
查看-element.html
<template>
<div repeat.for="row of data">
<span>${row.title}</span>
<span>${row.someData}</span>
</div>
</template>
如果视图元素包含很多绑定,会有不同吗?
拥有自定义元素肯定比没有自定义元素 "heavy weight" 更好,因为它在幕后引入了许多其他运行时机制,而这些机制仅通过普通绑定是不存在的。
这并不意味着它很慢或很重。就是说,相对于没有,会重一点。
在repeat.for中这两个选项之间是否存在性能或效率差异:
选项 1:内联元素
<div repeat.for="row of data">
<span>${row.title}</span>
<span>${row.someData}</span>
</div>
选项 2:自定义视图元素
<view-element repeat.for="row of data" row.bind="row"></view-element>
其中视图元素是:
查看-element.js
import { bindable } from 'aurelia-framework';
export class ViewElement {
@bindable row;
}
查看-element.html
<template>
<div repeat.for="row of data">
<span>${row.title}</span>
<span>${row.someData}</span>
</div>
</template>
如果视图元素包含很多绑定,会有不同吗?
拥有自定义元素肯定比没有自定义元素 "heavy weight" 更好,因为它在幕后引入了许多其他运行时机制,而这些机制仅通过普通绑定是不存在的。
这并不意味着它很慢或很重。就是说,相对于没有,会重一点。