Ultimamente ho letto molto su Type Script e sembra davvero interessante, ma ho qualche problema a capire come applicare questo al mio flusso di lavoro corrente, quindi iniziamo con quello.
Sviluppo principalmente applicazioni PHP, basate su Symfony, Laravel e Zend 2, usando MVC.
Quindi la maggior parte delle volte, quello che ho è un file javascript per ogni azione, per esempio diciamo che ho un elenco di utenti, e che su quella pagina ho un pulsante di cancellazione per ogni riga, questo pulsante chiama un confermare l'avviso. Così creo un file javascript, che chiama un plugin jQuery (bootbox o Bootstrap Sweet Alert), ci passa alcune traduzioni e il gioco è fatto.
Uso questo pattern per tutto, se ho bisogno di usare un uploader per qualche forma, faccio lo stesso, creo un file javascript, passo tutti i parametri e chiamo un plugin jQuery. Quindi ho un sacco di file javascript sul mio codice, e questo ha senso per me. Ad esempio: UsersList.js, UserEdit.js, VideoEdit.js, VideoUpload ed ecc. E in alcune viste ho creato diversi file Javascript per separare tutto in moduli, con diverse chiamate tra di loro per far funzionare una pagina (ad esempio uno file per lavorare con il video player, un altro per lavorare con grafici e cose del genere).
Inoltre ottimizzo il caricamento di Javascript e CSS su ogni pagina, caricando solo il js & richiesto; file css per quel controller, il che significa che da qualche parte sul mio codice ho una classe che minimizza e ugglifies in base al controller che l'utente sta visitando (io uso questo pacchetto: link ), questo rende i tempi di caricamento delle pagine veramente bassi, dal momento che non sto caricando l'intero javascript per l'intero progetto su ogni pagina, l'ultimo progetto su cui stavo lavorando, la dimensione totale di la mia cartella javascript era 9MB, anche quella gzip è molto.
Quindi la mia prima domanda, è come posso realizzare questo con Type Script senza perdere la sanità mentale, e senza avere 50 progetti su Type Script, da quello che ho capito e letto (potrebbe essere sbagliato), ogni tipo Il progetto Script genera solo un file javascript. Naturalmente potrei creare 50 classi diverse per ogni pagina e quindi istanziare ogni classe separatamente per ogni pagina, ma ciò significa che devo caricare l'intero javascript per ogni pagina, e ciò non è fattibile poiché la quantità di javascript usata è molto . E gestire 50 Type Script Projects non sembra molto carino.
La seconda domanda è: questo ha senso anche con Type Script o no? O devo pensare in un modo completamente diverso?