knockout-mapping

2.6.0 • Public • Published

knockout.mapping

Build Status npm version

Object mapping plugin for Knockout

Documentation

Official documentation here.

Install

Bower

bower install bower-knockout-mapping --save-dev

NPM

npm install knockout-mapping --save

Quick Start

 
var data = {
    email: 'demo@example.com',
    name: 'demo',
    addresses: [
        { type: 'home', country: 'Romania', city: 'Cluj' },
        { type: 'work', country: 'Spain', city: 'Barcelona' }
    ]
};
 
// Create a view model from data
var viewModel = ko.mapping.fromJS(data);
 
// Now use the viewModel to change some values (properties are now observable)
viewModel.email('demo2@example.com');
viewModel.name('demo2');
viewModel.addresses()[0].city('Bucharest');
 
// Retrieve the updated data (as JS object)
var newData = ko.mapping.toJS(viewModel);
 
// newData now looks like this
{
  email: 'demo2@example.com',
  name: 'demo2',
  addresses: [
    { type: 'home', country: 'Romania', city: 'Bucharest' },
    { type: 'work', country: 'Spain', city: 'Barcelona' }
  ]
}
 

Run this example in JSFiddle.

Test

Continuous Integration tests are done with Travis, and the associated Gulp task is test-ci. For development test task is used, which runs the tests against the latest version of Knockout.

License

MIT

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 2.6.0
    11,502
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 2.6.0
    11,502
  • 2.5.0
    78

Package Sidebar

Install

npm i knockout-mapping

Weekly Downloads

11,580

Version

2.6.0

License

MIT

Last publish

Collaborators

  • crissdev