如何设置我的目录以使用eyeglass获取modularscale

bre*_*ite 7 javascript css npm

我正试图通过使用眼镜将Sassy Modular Scale项目纳入我的构建中.通过npm install modularscale-sass --save-dev在我的项目目录中执行命令,我能够通过终端获得Modular Scale .

然后我看了看我的package.json,我看到它"modularscale-sass": "^2.1.1"已添加,在我的目录中,我可以访问目录下的node-modules文件.都好!然后,模块化比例文档指示我@import 'modular-scale'在我的main.scss文件中.

现在我运行gulp watch并编辑一些随机的css,看看gulp是否抱怨任何错误,我得到一个抛出错误说

Error: src/scss/main.scss 6:9 要导入的文件未找到或不可读: modular-scale

我知道这种情况正在发生bc gulp不知道在哪里可以找到,modular-scale因为眼镜可能没有设置正确的atm.

protfolio/ 
|
|-- dest/
|    |-- /js
|    |-- /css
|
|-- node_modules
|   |-- modularscale-sass
|   | .. 
|
|-- src/
|    |-- /js
|    |-- /scss
|        |-- /modules
|            |-- .. 
|        |-- /partails
|            |-- ..  
|        |-- /vendors
|            |-- ..
|        |-- main.scss 
|
|-- gulpfile.js 
| .. 
Run Code Online (Sandbox Code Playgroud)

我必须编辑eyeglass-exports.js文件吗?

通过查看js代码,我认为最合乎逻辑的做法是添加我的目录名称和样式表.我的假设是该module.exports函数将返回眼镜的路径以找到我的目录名称和样式表.正确?

var path = require('path');
// add my directory and stylesheet? 
module.exports = function(eyeglass, sass) {
  return {
    sassDir: path.join(__dirname, 'stylesheets')
  }
}
Run Code Online (Sandbox Code Playgroud)

我找到了一些关于眼镜的文档,但这里看起来很模糊:

在Sass文件中,您可以使用标准Sass导入语法引用眼镜模块:@import "my_eyeglass_module/file";.该my_eyeglass_module会在你的节点模块被解析到正确的目录,然后将文件将解决使用萨斯标准导入规则.

有人可以帮助解释我如何让这个工作属性.

这是github上我的目录的链接

谢谢

chr*_*ein 1

你如何配置 gulp 来知道使用眼镜?您阅读了gulp 集成指南吗?