2.0.4 • Published 4 years ago
@profiscience/knockout-contrib-utils-from-js v2.0.4
utils.fromJS
This package is intended for consumption via the @profiscience/knockout-contrib metapackage
Usage
fromJS(src, mapArrayElements = false)
Creates a tree of observables from src
.
If mapArrayElements
is true, array elements will be passed to fromJS
as well, else bare objects/primitives.
The much needed inverse to the undocumented ko.toJS
function; a dumb version of ko.mapping.fromJS that is a lot faster.
import { fromJS } from '@profiscience/knockout-contrib'
const foos = {
foo: 'foo',
bar: {
baz: 'baz',
qux: ['qux'],
},
}
fromJS(foos)
// {
// foo: ko.observable('foo'),
// bar: {
// baz: ko.observable('baz'),
// qux: ko.observableArray([
// 'qux'
// ])
// }
// }
fromJS(foos, true)
// {
// foo: ko.observable('foo'),
// bar: {
// baz: ko.observable('baz'),
// qux: ko.observableArray([
// ko.observable('qux') <--------- Array contents mapped when second argument is true
// ])
// }
// }
Benchmark
$ ./benchmark.ts
utils.fromJS x 316,313 ops/sec ±3.37% (79 runs sampled)
utils.fromJS (mapArrayElements) x 151,401 ops/sec ±3.24% (81 runs sampled)
mapping.fromJS x 11,995 ops/sec ±3.82% (81 runs sampled)
2.0.4
4 years ago
2.0.3
4 years ago
2.0.2
4 years ago
2.0.0
5 years ago
2.0.0-rc.4
6 years ago
2.0.0-rc.3
6 years ago
2.0.0-rc.2
6 years ago
2.0.0-rc.1
6 years ago
2.0.0-alpha.54341a5d
6 years ago
2.0.0-rc.0
6 years ago
1.0.1
6 years ago
1.0.0-alpha.10
6 years ago
1.0.0-alpha.9
6 years ago
1.0.0-alpha.8
6 years ago
1.0.0-alpha.7
6 years ago
1.0.0-alpha.6
6 years ago
1.0.0-alpha.5
6 years ago
1.0.0-alpha.4
6 years ago
1.0.0-alpha.3
6 years ago
1.0.0-alpha.2
6 years ago
1.0.0-alpha.1
6 years ago
1.0.0-alpha.0
7 years ago