Ho cercato su Internet e non riesco davvero a trovare una buona risposta a questa domanda.
Immagina che ci sia una vista che contiene un semplice elemento tab. Ogni contenuto della scheda viene caricato dinamicamente (tramite ajax) quando si fa clic sull'intestazione delle schede. La vista stessa ha il documento. Già-gestore di fare cose quando viene caricata la vista (non parziale). (ad esempio, avvia il modulo JavaScript javascript).
Un partial contiene un elenco di elementi che possono essere cancellati. Facendo clic sul pulsante Elimina dovrebbe aprire una finestra di dialogo modale per consentire all'utente di confermare l'eliminazione.
Quale sarebbe il modo migliore per gestirlo?
La vista non conosce il partial che è stato caricato e viceversa.
La vista ha una sorta di modulo che avrà una funzione
deleteElement (id) {// ...} Come dovrebbe essere chiamato da dentro il parziale?
Il parziale dovrebbe essere informato su deleteElement? Cosa succede se viene chiamato all'interno di un'altra vista quale modulo non ha tale funzione?
L'elemento delete dovrebbe essere dichiarato globale? Ha senso quando è necessario solo in un contesto specifico?
Oppure l'idea di dividere in singoli moduli javascript per View è già la decisione sbagliata che ho preso? (Il mio pensiero era di mantenere un singolo file .js che viene caricato solo quando veramente necessario, mantenere il codice pulito, la separazione delle preoccupazioni, ...)
Qualsiasi link, suggerimento, soluzione alternativa o idea sarebbe molto apprezzato.