restore

  • function
can/map/backup
 

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 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

  1. deep=false {bool}Optional

    whether to restore properties in nested Observes

Returns

{can.Map}

The Observe, for chaining.

var recipe = new can.Map({
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.