如何使用全局 css 样式 sheet 包括 GatsbyJS
How to use global css style sheet includes with GatsbyJS
默认情况下,GatsbyJS 正在推动使用 css 模块和自定义 css-in-js 库,例如 glamorous and typography
不幸的是,我正在将现有站点移植到使用传统全局样式表的 GatsbyJS。将所有现有 HTML-CSS 工具转换为 CSS 模块是一件苦差事。
我目前的技巧是更新 GatsbyJS html.js
并添加一个
<link rel="stylesheet" type="text/css" href="/style.old.css" />
到header。我有 style.old.css
生活在 /public
中,但是,当构建为 运行 时,它就会消失。
我希望有一个插件来支持这个,但似乎 Gatsby 团队不鼓励全局 CSS 这对于新项目来说是可以理解的。
我试图编写一个插件来添加它,但发现有关如何编写 "style plugin".
的资源有限
你很接近!
不要将 style.old.css
放在 /public
中,而是将其放在 /layouts
中。然后,只需像这样将其导入 /layouts/index.js
:
import './style.old.css'
当您启动一个新的 gatsby 项目 (gatsby new project-name
) 时,您会注意到 /layouts
文件夹中有一个 index.css
文件,该文件被导入到 layouts/index.js
默认。只需按照此示例添加您自己的全局样式表即可。
一般来说,你不应该直接在 /public
中放置任何东西。如果您希望静态文件最终位于 /public
文件夹中,请创建一个 /static
文件夹并将它们放在那里(Gatsby 会将 /static
中的任何文件复制到 /public
你)。
默认情况下,GatsbyJS 正在推动使用 css 模块和自定义 css-in-js 库,例如 glamorous and typography
不幸的是,我正在将现有站点移植到使用传统全局样式表的 GatsbyJS。将所有现有 HTML-CSS 工具转换为 CSS 模块是一件苦差事。
我目前的技巧是更新 GatsbyJS html.js
并添加一个
<link rel="stylesheet" type="text/css" href="/style.old.css" />
到header。我有 style.old.css
生活在 /public
中,但是,当构建为 运行 时,它就会消失。
我希望有一个插件来支持这个,但似乎 Gatsby 团队不鼓励全局 CSS 这对于新项目来说是可以理解的。
我试图编写一个插件来添加它,但发现有关如何编写 "style plugin".
的资源有限你很接近!
不要将 style.old.css
放在 /public
中,而是将其放在 /layouts
中。然后,只需像这样将其导入 /layouts/index.js
:
import './style.old.css'
当您启动一个新的 gatsby 项目 (gatsby new project-name
) 时,您会注意到 /layouts
文件夹中有一个 index.css
文件,该文件被导入到 layouts/index.js
默认。只需按照此示例添加您自己的全局样式表即可。
一般来说,你不应该直接在 /public
中放置任何东西。如果您希望静态文件最终位于 /public
文件夹中,请创建一个 /static
文件夹并将它们放在那里(Gatsby 会将 /static
中的任何文件复制到 /public
你)。