L'ajout de propriétés à la vue du modèle créé en utilisant le knock-out JS plugin de cartographie

Je suis en train de travailler à travers la cartographie plugin exemple sur le Knockoutjs site web.

C'est l'exemple des données.

Knock-out JS Plugin de Cartographie

var data = {
    name: 'Scott',
    children: [
        { id : 1, name : 'Alice' }
    ]
}

L'exemple montre comment remplacer la cartographie pour l'un des enfants, mais comment puis-je modifier la cartographie de l'objet de base.

Si par exemple je voulais ajouter un "FavouriteChild" propriété de Scott comment m'y prendre?

Je suppose que j'ai besoin d'utiliser la fonction create sur la cartographie de base, mais je ne peux pas trouver un exemple de la syntaxe n'importe où.

var myChildModel = function(data) {
    ko.mapping.fromJS(data, {}, this);

    this.nameLength = ko.computed(function() {
        return this.name().length;
    }, this);
}

var mapping = {
    'children': {
        create: function(options) {
            return new myChildModel(options.data);
        }
    }
}

var viewModel = ko.mapping.fromJS(data, mapping);

EDIT : De la accepté de répondre ci-dessous j'ai trouvé que c'

<span data-bind='text: AdditionalProperty'>

Le knock-out code

var mapping = {
    create: function (options) {
        //customize at the root level.  
        var innerModel = ko.mapping.fromJS(options.data);

        innerModel.AdditionalProperty = 'Hello World';

        return innerModel;
    }
}

var viewModel = ko.mapping.fromJS(data, mapping);

//use this as our model bindings
ko.applyBindings(viewModel);
InformationsquelleAutor fluent | 2011-12-29