/ / Come utilizzare il plug-in per il mapping di knockout con Durandal? - knockout.js, knockout-mapping-plugin, durandal

Come utilizzare il plug-in per il mapping di knockout con Durandal? - knockout.js, knockout-mapping-plugin, durandal

Sono nuovo in Durandal e volevo riscrivere il mioprogetto knockout esistente utilizzando questo framework. Nel mio vecchio progetto sto usando un plug-in per il mapping di knockout e ora ho un problema con esso. Lavoro con il progetto di esempio Durandal come base. Ecco la mia parte di codice:

define(["durandal/app", "durandal/system", "knockout"], function (app, system, ko) {

var clients = ko.observableArray([]);

return {
clients: clients,

activate: function(data) {
var self = this;
ko.mapping.fromJS(getData(), {}, self.clients);
}
};
};

L'errore è:

Uncaught TypeError: impossibile chiamare il metodo "fromJS" di undefined

In effetti, è indefinito, ma dove dovrei aggiungerlo e farlo funzionare?

Grazie.

risposte:

0 per risposta № 1

Dovresti aggiungere il plugin per la mappatura nel definealtrimenti non lo caricherà.

define(["durandal/app", "durandal/system", "knockout", "knockout-mapping"], function (app, system, ko) {

Assicurati di poter caricare questo script in questo modo nella configurazione di requirejs.

Ti suggerisco di caricare Knockout e il plugin di mappatura nel main.jsquindi non è necessario continuare a "richiederli" in tutti i modelli di visualizzazione. Puoi anche raggrupparli separatamente e non far parte del caricatore.