Il nome non influisce sull’ordine di esecuzione. @merefield la riga che hai collegato influisce su come vengono visualizzati nell’interfaccia utente di amministrazione, ma non viene utilizzata per l’esecuzione effettiva.
Questa è la riga pertinente per l’ordine di esecuzione:
Quindi vengono eseguiti in ordine crescente di ‘id’ nel database.
L’unica garanzia che è portabile tra le istanze di Discourse è che il codice del tema viene sempre eseguito prima del codice del componente del tema.
Come menzionato da @Johani sopra, se hai bisogno di eseguire codice dopo che un altro componente è stato caricato, la soluzione migliore è probabilmente utilizzare un inizializzatore Ember, che supporta l’ordinamento. Sfortunatamente, in questo caso non sarà possibile subito, poiché DiscoTOC non sembra utilizzare inizializzatori Ember. L’aggiornamento di DiscoTOC per utilizzare javascript multi-file (e quindi inizializzatori Ember) sarebbe certamente pr-welcome.