0

最近我在资产文件夹中购买了一个带有资产的主题:-

 1) assets/js/something.js  
2) assets/css/something.cs  
3) assets/sass/main.scss (with import statements for files inside 3 no. dashboard folder and sub-folders inside dashboard)  
4) assets/sass/dashboard/_variable.scss  
5) assets/sass/dashboard/mixins/something.scss  
6) assets/img/something.jpg  
7) assets/img/faces/some.png  

现在,我需要在 Rails 资产管道中使用主题并组织为:-

1) 将所有 *.js 文件保留在上述 (1) 号中。在 /app/assets/javascripts 文件夹和 application.js 文件中,代码是:-

require rails-ujs  
require turbolinks  
require_tree .

(Js 文件已导入,我认为没有错误,因为所有文件都在 javascripts 目录中)

2) 将所有 *.css 文件保存在上面第 2 点的 /app/assets/stylesheets 中。
3) 将上面第 3 点中的 assets/sass/main.scss 保存到 /app/assets/stylesheets。
4) 将上面第 4 点中的仪表板文件夹保存到 /app/assets/stylesheets 中,application.css 文件内容如下:-

require_self  
require_tree .

我认为这应该可行,因为所有 css 都是由 require_tree 导入的。并且“main.scss”具有从仪表板目录导入的文件。但是我从“main.scss”文件导入的“_variables.scss”中定义的变量中得到“变量未找到 $font-weight-bold sass 错误”。我该如何解决这个问题以及资产组织应该是什么。

谢谢你们。

4

1 回答 1

1

我设置的方式有效,但我不知道它的约定(- 表示文件夹,+ 表示文件):

-stylesheets
  -base 
   + globals.scss
   + mixins.scss
   + normalize.scss
   + variables.scss

  - styles
   + login.scss

  + applicaion.css.scss  
     require_self 
     require main

  + mains.scss here is where i import all the files
     @import "base/mixins.scss";
     @import "base/normalize.scss";
     @import "base/globals.scss";
     @import "base/variables.scss";
     // login
     @import "styles/login.scss";

- javasctipts
   + application.js 
     //= require something
     //= require_tree

   + something.js

和 asssts/image 文件夹中的图像

于 2017-07-18T11:44:49.620 回答