grunt-sass和自定义函数

时间:2015-06-19 08:51:18

标签: sass gruntjs libsass node-sass

我想在我的grunt文件(或任何地方)中创建自定义函数以与grunt-sass一起使用。

我试过这个:

options: {
    functions: {
        'fakeList()': function() { 
            var list = new require('node-sass').types.List(3);
            list.setValue(0, 'a');
            list.setValue(1, 'b');
            list.setValue(2, 'c');
            return list;
        }
    }
},  

但我正确得到error in C function readFolder: Cannot find module 'node-sass'(因为嵌套依赖中的node-sass,而不是直接的)。

所以我尝试使用npm install node-sass强制执行。 但后来我得到了error in C function readFolder: A SassValue object was expected.

有人有同样的问题吗?

1 个答案:

答案 0 :(得分:0)

问题是必须是SassValue对象的setValue方法的值!

我改变了这种方式,现在它起作用了:

options: {
    functions: {
        'fakeList()': function() { 
            var sass = require('node-sass');
            var list = new sass.types.List(3);
            list.setValue(0, sass.types.String('a'));
            list.setValue(1, sass.types.String('b'));
            list.setValue(2, sass.types.String('c'));
            return list;
        }
    }
},