2014-04-13 19 views
8

Buduję stronę. W trybie dewelopersyjnym dobrze ładuje pliki .js. Jednak w trybie produkcyjnym, występuje następujący błąd:Railsy zwracają .js z typem MIME "text/html"

Refused to execute script from 'http://bowuzhi.herokuapp.com/javascripts/items.js' because its MIME type ('text/html') is not executable, and strict MIME type checking is enabled. 

a zawartość http://bowuzhi.herokuapp.com/javascripts/items.js jest html:

<div class='page-header'> 
<a class="btn btn-primary" href="/zh-TW/items/new"><span class='glyphicon glyphicon-plus'></span> 
New 
</a><h1>Catalog</h1> 
</div> 
<div class='row' id='items'> 
</div> 
<div class='row'> 
<div class='col-md-12'> 

</div> 
</div> 
<script src="/javascripts/items.js"></script> 

Ta strona jest na Heroku: http://bowuzhi.herokuapp.com.

Dlaczego .js okazuje się być html?

Odpowiedz

8

Znalazłem odpowiedź. Problem polega na tym, że /javascripts/items.js był . Został on włączony przy użyciu pomocnika javascript_include_tag w widoku, a nie w plikach manifestu (application.js), więc nie zostałby wstępnie skompilowany. Aby rozwiązać problem, dodałem linię config.assets.precompile += %w(items.js) do mojego .

Możesz znaleźć więcej informacji w tym pytaniu: rails-3-1-asset-pipeline-how-to-load-controller-specific-scripts.

+1

Dzięki! Dokładnie ten sam problem! –

Powiązane problemy