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-define-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
import DefineMap from "can-define/map/map";
import defineBackup from "can-define-backup";
const recipe = new DefineMap( "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"
} ]
} );
defineBackup(recipe);
recipe.backup();
recipe.title = "Flapjack Mix";
recipe.restore();
recipe.title; // "Pancake Mix"
recipe.ingredients[ 0 ].quantity = "7 cups";
recipe.restore();
recipe.ingredients[ 0 ].quantity; // "7 cups"
recipe.restore( true );
recipe.ingredients[ 0 ].quantity; // "6 cups"