【发布时间】:2020-04-10 13:12:48
【问题描述】:
我是 Gatsby 的新手(以及一般的前端)。 我正在尝试根据博客主题 https://www.gatsbyjs.org/packages/gatsby-theme-blog/ 将 katex 插件 https://www.gatsbyjs.org/packages/gatsby-remark-katex/ 添加到我的项目中,但它不起作用。
我所做的如下:
从gatsby-theme-blog开始
$ gatsby new my-themed-blog https://github.com/gatsbyjs/gatsby-starter-blog-theme
$ cd my-themed-blog
并在项目顶部安装gatsby-remark-katex插件,
$ npm install --save gatsby-transformer-remark gatsby-remark-katex katex
在顶层gatsby-config.js添加配置
module.exports = {
plugins: [
{
resolve: `gatsby-theme-blog`,
options: {},
},
{
resolve: `gatsby-transformer-remark`,
options: {
plugins: [
{
resolve: `gatsby-remark-katex`,
options: {
// Add any KaTeX options from https://github.com/KaTeX/KaTeX/blob/master/docs/options.md here
strict: `ignore`
}
}
],
},
},
],
// Customize your site metadata:
siteMetadata: {
// ... cutting the following
},
}
并在顶层 gatsby-browser.js 中导入 css
import "katex/dist/katex.min.css"
如果我在content/posts 下放一些降价文档,比如
---
title: Hello World (example)
date: 2019-12-18
---
math $x + y = \epsilon$.
网页显示就像
Hello World (example)
December 18, 2019
math $x + y = \epsilon$.
我是为普通的 gatsby 项目以及博客启动者 https://www.gatsbyjs.org/starters/gatsbyjs/gatsby-starter-blog/ 做的 比如从
$ gatsby new gatsby-starter-blog https://github.com/gatsbyjs/gatsby-starter-blog
编辑gatsby-config.js点赞
{
resolve: `gatsby-transformer-remark`,
options: {
plugins: [
{
resolve: `gatsby-remark-images`,
options: {
maxWidth: 590,
},
},
{
resolve: `gatsby-remark-responsive-iframe`,
options: {
wrapperStyle: `margin-bottom: 1.0725rem`,
},
},
`gatsby-remark-prismjs`,
`gatsby-remark-copy-linked-files`,
`gatsby-remark-smartypants`,
{
resolve: `gatsby-remark-katex`,
options: {
// Add any KaTeX options from https://github.com/KaTeX/KaTeX/blob/master/docs/options.md here
strict: `ignore`
}
}
],
},
},
和gatsby-browser.js
// custom typefaces
import "typeface-montserrat"
import "typeface-merriweather"
import "katex/dist/katex.min.css"
它正在工作。
如何使用 blog-theme 等主题将 katex 插件添加到项目中?我应该以某种方式将其添加到node_modules 的主题目录中吗?
谢谢!
【问题讨论】: