@import funktioniert nicht in der SASS-Datei in Unterordner
Die Bühne
Habe ich die folgende stylesheet-Struktur:
/stylesheets
|
|-- /subfolder
| |
| + styles.css.scss
|
+ application.css.scss
Anwendung.html-Code.haml
= stylesheet_link_tag "application", media: "all"
= stylesheet_link_tag "subfolder/styles", media: "all"
Anwendung.css.scss
@import "styleguide";
@import "styleguide/base/_all";
@import "styleguide/modules/_all-no-grid";
// Omitting rules not relevant to the problem
Stile.css.scss
@import "styleguide";
@import "styleguide/grid/_grid";
@import "styleguide/modules/_all-grid";
// Omitting rules not relevant to the problem
Den styleguide Dateien Leben in einem Juwel, das dient der Vermögenswerte aus vendor/stylesheets
mit Hilfe eines RoR-Motor.
Das Problem
Wenn ich meine Anwendung in der Produktion mit vor-kompilierten assets bin ich auf Probleme hinweist, die @import
für den styleguide.
File to import not found or unreadable: styleguide.
Load path:
Sass::Rails::Importer([omitted]/app/assets/stylesheets/local/styles.css.scss)
(in [omitted]/app/assets/stylesheets/local/styles.css.scss)
Die Problemumgehung
Ist es kein problem mit der styleguide selbst, denn sobald ich den import der subfolder/styles.css.sccs
Datei aus der application.css.scss
Datei funktioniert alles wie erwartet.
Anwendung.html-Code.haml
= stylesheet_link_tag "application", media: "all"
Anwendung.css.scss
@import "styleguide";
@import "styleguide/base/_all";
@import "styleguide/modules/_all-no-grid";
@import "subfolder/styles"
// Omitting rules not relevant to the problem
Stile.css.scss
// Same as above, included for completeness
@import "styleguide";
@import "styleguide/grid/_grid";
@import "styleguide/modules/_all-grid";
// Omitting rules not relevant to the problem
Lösungen
Hat jemand lief in etwas so vor? Gibt es irgendwelche bekannten Probleme, die verursachen könnte dies geschehen?
- Wenn Sie möchten, importieren Sie Ihre scss-Dateien in die Anwendung scss-Datei sollten Sie auf die Einfuhr ohne das ' _ ' - ... ie. @import "styleguide/base/all";
Du musst angemeldet sein, um einen Kommentar abzugeben.
Werde ich denke, das ist eine einfache Frage der änderung Ihren Weg(s) in Ihrem Stile.css.scss-Datei. Wenn Ihr styleguide Verzeichnis nicht in Ihrem Unterordner (die es nicht scheinen, wie es ist), müssen Sie zeigen Sie Ihre import-Pfade einer Ebene in Stile.css.scss.
Wenn das der Fall ist, versuchen Sie einfach:
Weil Anwendung.css.scss befindet sich eine Ebene nach oben, erkennt er diese Pfade werden beim importieren, wo Stile.css.scss nicht.