Dois-je utiliser @import ou fichiers manifest?
Rails 3.1 introduit une nouvelle façon d'organiser les deux CSS et JS avec l'introduction de fichiers de manifeste. Par exemple, application.js
pourrait ressembler à ceci:
//= require jquery
//= require jquery-ui
//= require jquery_ujs
//= require_tree .
Cela permettra de saisir les différents bits de Jquery, tous de votre propre JS, de les enchaîner ensemble et servir comme d'un fichier unique des clients. Assez Simple.
Malheureusement, la situation n'est pas si clair pour moi avec SASS. SASS a déjà concaténation construit en utilisant @import
.
Dois-je changer tous mes partiels en plein SASS des fichiers et de les concaténer en utilisant le fichier de manifeste ou de continuer à utiliser @import? Pourquoi?
- J'ai déjà des problèmes avec les codes existants qui se brisa sur le nouveau asset pipeline de 3.1... je suis toujours dans le flou sur la façon d'utiliser sass sur ce
Vous devez vous connecter pour publier un commentaire.
Pignons convertit toutes les importations en CSS avant de concaténation, de sorte qu'il ne peut pas être utilisé pour partager des mixin et variables dans des fichiers. Je devine que cela va rester de cette façon simplement parce que vous pouvez importer SASS, LESS CSS et des fichiers via cette méthode.
Alors, voici comment je le fais:
asset_path()
appels), je les ai mis dans mon fichier principal de l'application.css.scss.erb//=require jquerymobile
Voici comment mon application.css est en ce moment. Ne pas oublier le ";" et les guillemets:
Remarque que je suis encore à explorer les Rails 3.1 asset pipeline, de sorte que votre kilométrage peut varier. Je vais essayer de revenir & mise à jour si je trouve autre chose intéressante.
La meilleure façon de résoudre ce problème est d'utiliser le natif
@import
directive, comme expliqué ici: https://github.com/rails/sass-rails#important-noteCette question a été déjà répondu ici : comment utiliser les pignons des importations avec sass
Espérons que cette aide! 🙂
La sass-rails gem explicitement les états pas utiliser le
require
syntaxe avec SASS fichiers - utilisation de SASS est@import
plutôt les instructions.