2012-07-01 11 views
20

Nel mio file application.js, ho:I binari specificano l'ordine di caricamento dei file javascript?

//= require jquery 
//= require jquery_ujs 
//= require underscore 
//= require backbone 
//= require_tree . 
// 
//= require .//community_app 
// 
//= require_tree ../templates/ 
//= require_tree .//models 
//= require_tree .//collections 
//= require_tree .//views 
//= require_tree .//routers 

ma il codice HTML generato non obbedisce a questo ordine:

<head> 
    <title>CommunityApp</title> 
    <link href="/assets/application.css?body=1" media="all" rel="stylesheet" type="text/css" /> 
<link href="/assets/communities.css?body=1" media="all" rel="stylesheet" type="text/css" /> 
<link href="/assets/home.css?body=1" media="all" rel="stylesheet" type="text/css" /> 
    <script src="/assets/jquery.js?body=1" type="text/javascript"></script> 
<script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script> 
<script src="/assets/underscore.js?body=1" type="text/javascript"></script> 
<script src="/assets/backbone.js?body=1" type="text/javascript"></script> 
<script src="/assets/collections/communities.js?body=1" type="text/javascript"></script> 
<script src="/assets/community_app.js?body=1" type="text/javascript"></script> 
<script src="/assets/home.js?body=1" type="text/javascript"></script> 
<script src="/assets/models/community.js?body=1" type="text/javascript"></script> 
<script src="/assets/application.js?body=1" type="text/javascript"></script> 
    <meta content="authenticity_token" name="csrf-param" /> 
<meta content="ktrLMDYSJaU/mmgmzfpxDfMin7OCXga4K5gVIJZHJUI=" name="csrf-token" /> 
</head> 
<body> 

Collezioni viene caricato prima che il modello che mi dà l'errore sul fronte -fine. Come posso farlo in modo che carichi in modo specifico i file js? grazie

risposta

32

hai ancora un

//= require_tree . 

Più in alto, che sta caricando tutto, a quanto pare in ordine alfabetico. Rimuovilo (ovviamente assicurandoti che tutto sia richiesto altrove) e dovresti stare bene. Potresti essere in grado di farlo l'ultima riga del tuo application.js ma non ricordo il comportamento specificato quando due istruzioni finiscono per richiedere lo stesso file

+2

Grazie per l'input. C'è un modo in cui posso rendere require_tree non caricato in ordine alfabetico? Qual è il modo corretto per farlo? – 0xSina

+1

@ 0xSina: il modo corretto per specificare un ordine specifico è, beh, specificare l'ordine manualmente come si sta facendo (quasi). –

+1

Rimuoverei 'require_tree .' e richiedo le cose nell'ordine desiderato (possibilmente usando require_tree in sottocartelle) –

Problemi correlati