2015-09-02 31 views
9

Sto cercando di risolvere un problema nella mia app Rails 4 + Spree e un post mi ha suggerito di convertire il mio file all.css in all.scss (sass).Qual è l'equivalente di SASS per * = require_self e * = require_tree.?

Come posso convertire

*= require spree/frontend 
*= require_self 
*= require_tree . 

a @imports?

ho fatto la

@import "spree/frontend"; 

che era abbastanza semplice, ma ora la mia app è "senza stile" e sono convinto che è a causa delle altre due direttive.

Grazie!

+2

possibile duplicato di [È possibile importare un'intera directory in sass utilizzando @import?] (Http://stackoverflow.com/questions/4778627/is-it-possible-to-import-a-whole-directory -in-sass-con-import) – Nathan

risposta

3

'require_tree' indicherà alla pipeline di asset di includere tutti i file all'interno della directory specificata. Di default è impostato sulla directory corrente con. (i, punto e). Fare riferimento a http://guides.rubyonrails.org/asset_pipeline.html per ulteriori dettagli.

Dopo aver cambiato il nome del file application.css-application.scss, \*=require_tree . possono essere sostituiti con @import "/\*" (Esempio: - su un Mac dichiarazione sarebbe tradotto in un qualcosa di simile percorso /Users/user_name/app_name/app/assets/stylesheets/*). Lo * qui importa tutti i file all'interno della directory dei fogli di stile. Fare riferimento a Is it possible to import a whole directory in sass using @import? per ulteriori informazioni.

Questo dovrebbe risolvere il tuo problema.

Ma, il modo suggerito per andare su questo è quello di creare un altro file con estensione .scss che contiene tutte le importazioni che si desidera e utilizzare \*=require_self e \*=require_tree . all'interno del file application.scss.