Ho un'applicazione internet mvc4 con aree, per la mia organizzazione ogni area rappresenta una SPA e tramite "Gestisci pacchetto NuGet" ho installato "Durandal 1.2.0", "Durandal Transitions 1.2.0" e "Durandal Router 1.2.0". Ho organizzato le cartelle e abbandonato le "viste" e "viewmodels" dalla cartella "App" di Durandal e ho inserito le nuove viste nella cartella "VIews" dell'area mvc4 ad esempio:Durandal e MVC4 Aree per più SPA
Aree -> NewArea -> Viste -> ControllerFolder -> vista -> shell.html
Poi ho messo l ' "ViewModels" nella cartella "script", per esempio:
script -> NewArea -> ControllerFolder -> ViewModels -> shell.js
script -> NewArea -> ControllerFolder -> main.js
Poi ho cambiato i percorsi per JS di Durandal, per esempio in main.js:
define(['../../../App/durandal/app',
'../../../App/durandal/viewLocator',
'../../../App/durandal/system',
'../../../App/durandal/plugins/router',
'../../../App/services/logger'],
E ho cambiato main.js nella riga successiva:
viewLocator.useConvention('viewmodels', '../Areas/NewArea/Views/ControllerFolder/views');
Ma che la configurazione di cartelle non riesce perché la prossima riga chiama diverse volte il modulo "viewLocator" nella sua definizione e riscrivere la configurazione di "useConvention" con il valore di default:
app.setRoot('viewmodels/shell', 'entrance');
Questo comportamento accade solo quando le cartelle "viste" un d "viewmodels" non rimangono nella cartella "App" di "Durandal".
Per favore aiutami, come avere varie SPA nello stesso progetto?
Grazie, per il tuo suggerimento, forse puoi darmi maggiori informazioni su "bootstrapper". – kuskunko