tKO 4.0.0-alpha2 Perf Test
by bmh_ca
HTML
<script src="https://unpkg.com/[email protected]/dist/ko.js"></script>
<div id='x'>
<strong>{{ count }} / {{ time }} ms</strong>
<custom-component></custom-component>
</div>
<div id='cc-template'>
cc
{{# unless: finished }}
<custom-component></custom-component>
{{ /unless }}
</div>
JavaScript
let count = ko.observable(0)
let time = ko.observable(false)
const start = performance.now()
const ITERATIONS = 1000
class viewModel {
constructor () {
this.finished = count() > ITERATIONS
count(count() + 1)
time(performance.now() - start)
}
}
ko.components.register("custom-component", {
viewModel, template: {element: 'cc-template'}
})
ko.applyBindings({count, time}, document.getElementById('x'))