我正在采用一个 gatsby 入门项目,该项目使用Lost grid并从 css 转换为 scss 以获得一些收益。这是入门项目: https ://github.com/wpioneer/gatsby-starter-lumen
本质上,我正在将项目转换为 scss,因为我更喜欢它的结构并且希望摆脱所有 css 文件。现在,我只是:
- 已安装
sass-loader
,scss
和node-sass
- 将所有 css 文件重命名为 scss 文件
并修改
gatsby-node.js
为以下内容:var rucksack = require('rucksack-css') var lost = require("lost") var cssnext = require("postcss-cssnext") exports.modifyWebpackConfig = function(config, env) { config.merge({ postcss: [ lost(), rucksack(), cssnext({ browsers: ['>1%', 'last 2 versions'] }) ] }) config.loader('svg', { test: /\.(svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/, loader: 'file-loader', }) config.loader('sass', { test: /\.scss$/, loader: 'style-loader!css-loader!sass-loader', }) return config };
不幸的是,虽然这确实允许我使用 scss 构建和运行项目,但我注意到我可爱的 Lost 网格已经消失了。经过调查,我注意到它.sidebar
仍在lost-column: 1/3
浏览器中读取(例如),所以我可以看到对丢失网格至关重要的预处理没有发生。
老实说,这可能是 Lost 网格之外的问题,而是我如何构建的问题gatsby-node.js
,但我希望能深入了解我所缺少的内容。解决此问题后,我不介意为 gatsby 上传scss/lost 入门项目。