restore
Restore saved values of an Observe's properties.
map.restore( [deep] )
restore
sets the properties of an Observe back to what they were the last time
[can-map-backup.prototype.backup backup] was called. If deep is true
,
restore
will also restore the properties of nested Observes.
restore
will not remove properties that were added since the last backup, but it
will re-add properties that have been removed.
Parameters
- deep
{bool}
:whether to restore properties in nested Observes
var CanMap = require('can-map');
require('can-map-backup')
var recipe = new CanMap("Recipe", {
title: 'Pancake Mix',
yields: '3 batches',
ingredients: [{
ingredient: 'flour',
quantity: '6 cups'
},{
ingredient: 'baking soda',
quantity: '1 1/2 teaspoons'
},{
ingredient: 'baking powder',
quantity: '3 teaspoons'
},{
ingredient: 'salt',
quantity: '1 tablespoon'
},{
ingredient: 'sugar',
quantity: '2 tablespoons'
}]
});
recipe.backup();
recipe.attr('title', 'Flapjack Mix');
recipe.restore();
recipe.attr('title'); // 'Pancake Mix'
recipe.attr('ingredients.0.quantity', '7 cups');
recipe.restore();
recipe.attr('ingredients.0.quantity'); // '7 cups'
recipe.restore(true);
recipe.attr('ingredients.0.quantity'); // '6 cups'
Events
When restore
sets values or re-adds properties, the same events will be fired (including
change, add, and set) as if the values of the properties had been set using attr
.