Node sass not importing

836 Views Asked by At

I am building a sass compiler with nodejs, electron, and node-sass.

There will be a config file that will describe some "sass compilers" for many projects and the user will have the ability to activate and deactivate them through a GUI.

I managed with "electron" to create the interface and with the use of electron`s "ipcmain" to initiate the compilers on demand.

To init a compiler, I spawn a child process which encloses the whole compiler.

The compilation is done with following code:

var result = this.sass.renderSync({
        file: 'C:\\Users\\George\\Desktop\\css_compiler_tests\\test3\\scss\\style.scss',
        outFile: 'C:\\Users\\George\\Desktop\\css_compiler_tests\\test3\\css\\style.css',
        includePaths:[
            'C:\\Users\\George\\Desktop\\css_compiler_tests\\test3\\scss\\',
            'C:\\Users\\George\\Desktop\\css_compiler_tests\\test3\\scss\\foundation\\components\\'
        ]
    });

I execute the compilation using absolute paths but the files us relative paths.

I run my program/gui and activated the compiler and I got a CSS file.
The problem is that some imports are missing.

My root folder is at 'C:\Users\George\Desktop\css_compiler_tests\test3\'.
I try to compile 'scss\style.scss' which imports 'scss_inculded-files.scss'.

The file 'scss_inculded-files' imports 'scss\foundation.scss' which imports form 'scss\foundation\components'.

Here is an example:

/*scss\style.scss*/
@import "included-files";

/*scss\_inculded-files.scss*/
@import 
"includes/fonts",
"includes/custom-colors",
"includes/foundation-custom-settings",
"foundation/settings",
"foundation";

/*scss\foundation.scss*/
@import
"foundation/components/grid",
"foundation/components/accordion";

The content of the two last imports is missing.

Finaly I tried from command line and got the same error:

 D:\mytests\nodejs\nodeSass> node_modules/.bin/node-sass C:\Users\George\Desktop\css_compiler_tests\test3\scss\style.scss -o C:\Users\George\Desktop\css_compiler_tests\test3\scss\ --include-path C:\Users\George\Desktop\css_compiler_tests\test3\scss\

Is there a way to include those missing files?

Thank you in advance.

Edit 1 After some experimentation I found out that the Mixins are the problem.

Let say I have a Mixin like that:

@mixin headline($size, $color: $base-color) {
    color: $color;
    font-size: $size;
}

It is compiled perfectly if I call it like that:

h1 {
    @include headline($color: blue, $size: 12px);
}

If I don't call it isn't compiled.

I am using Foundation Zurb framework which I believe auto includes the mixins.

0

There are 0 best solutions below