Domanda

Ho visto che alcuni Rails CMS (come radiante) hanno plugin che essenzialmente compilano Sass quando una pagina si accede. C'è un modo per fare questo in un rotaie regolare app? Sta facendo così performante? Fondamentalmente, io sto guardando un modo per rimuovere il passaggio aggiuntivo di correre Compass per compilare i miei fogli di stile.

È stato utile?

Soluzione

non ho usato bussola specifico, ma ci sembra che ci sia una bandiera di produzione in modo da file vengono compilati - non potevo immaginare che avevano costruirlo ricompilare per richiesta della produzione, Radiant compila del css all'avvio applicazione e, se si poi commettere quei file CSS generati non tenta di generare di nuovo per quanto ne so.

http://compass-style.org/docs/tutorials/production-css /

Altri suggerimenti

Sass e Compass si integrano automaticamente con Rails. Se stai usando Rails 3, tutto quello che dovete fare è aggiungere al vostro gem "haml" Gemfile e tutti i file e .sass .scss in public/stylesheets/sass otterrà compilato per i file .css in public/stylesheets.

Compila per richiesta? Penso che potrebbe essere un successo per le prestazioni. Si dovrebbe utilizzare una strategia di caching in quel caso. In modo che compila il foglio di stile solo se non si trova nella cache.

Si potrebbe creare un metodo di supporto setup_stylesheet che si prenderà cura di impostare il foglio di stile CSS. Si chiama questo metodo sul layout dell'applicazione.

setup_stylesheet sarà verificare se il foglio di stile CSS è in cache, e se è lì allora usarlo. Se non lo è, quindi compilarlo.

Un altro approccio:

È possibile impostare un initialiser che chiamerà Compass per compilare i fogli di stile SASS, quando viene lanciato l'App.

  • sta facendo così performante?

Ci sarà un massiccia calo di prestazioni quando si compila in fase di esecuzione.

Come NEX3 (autore di Sass gemma ) ha sottolineato su un altro forum , non c'è bisogno alcuna necessità di correre compass watch.

I caldamente di mettere il seguente in production.rb: Sass::Plugin.options[:never_update] = true - questo è particolarmente importante se siete su Heroku. (Si potrebbe anche fare questo nel file di rack, dove è anche possibile specificare altre opzioni

Hmm, buona fortuna

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top