Skip to main content

Blog base

docusaurus 博客基础​

1.md 文件文字换行​

markdown 文件文字换行

双空格+换行打字

2.代码块​

代码块

点点点后加要 highlight 的语言类型,换行 copy 你的代码,再换行用点点点收尾【相当于 pre 标签】

```js
var handsome;
```;

3.发布多个 blog​

发布多个 blog

在 config.js 中声明,如下所示:

docusaurus.config.js
plugins: [
[
'@docusaurus/plugin-content-blog',
{
/**
* 多实例插件必填。
*/
id: 'second-blog',
/**
* 你的网站上博客的 URL 路由。
* !!请务必不要 添加末尾斜杠。
*/
routeBasePath: 'my-second-blog',
/**
* 相对于站点目录的文件系统路径。
*/
path: './my-second-blog',
},
],
],

4.告示类​

p.s. 避免 prettier 将代码格式化成错误语法的影响,还是多空两行比较保险

:::note

一些包含 _Markdown_ `语法` 的 **内容**。 看看[这个 `link`](#4告示类)。

:::

:::tip

一些包含 _Markdown_ `语法` 的 **内容**。 看看[这个 `link`](#4告示类)。

:::

:::info

一些包含 _Markdown_ `语法` 的 **内容**。 看看[这个 `link`](#4告示类)。

:::

:::caution

一些包含 _Markdown_ `语法` 的 **内容**。 看看[这个 `link`](#4告示类)。

:::

:::danger

一些包含 _Markdown_ `语法` 的 **内容**。 看看[这个 `link`](#4告示类)。

:::
note

一些包含 Markdown 语法 的 内容。 看看这个 link。

tip

一些包含 Markdown 语法 的 内容。 看看这个 link。

info

一些包含 Markdown 语法 的 内容。 看看这个 link。

caution

一些包含 Markdown 语法 的 内容。 看看这个 link。

danger

一些包含 Markdown 语法 的 内容。 看看这个 link。

5.颜色生成器​

是个人都不会喜欢最初始给你的颜色主题吧【🐶.jpg】
于是乎,你可以在下面选择你喜欢的颜色,微调,就可以得到一个颜色主题(一系列颜色);你甚至可以直接在该页面预览,你会发现这个博客已经被替换成你的目标颜色主题了。
它会自动生成代码,你可以将其复制到你的 src\css\custom.css 文件,覆盖掉原有的样式。

tip

主色调最好至少有 WCAG-AA contrast ratio 对比度,以保证可读性。你可以用 Docusaurus 自己的网站来预览你的配色的效果。深色模式下,你可以换一套配色,因为同一种颜色一般不能在浅色和深色模式下都保持足够的可读性。

CSS Variable NameHexAdjustmentContrast Rating
--ifm-color-primary-lightest#ffffffAAA 🏅
--ifm-color-primary-lighter#d4fcf4AAA 🏅
--ifm-color-primary-light#c1fbf0AAA 🏅
--ifm-color-primary#9bf9e60AAA 🏅
--ifm-color-primary-dark#75f7dcAAA 🏅
--ifm-color-primary-darker#62f6d8AAA 🏅
--ifm-color-primary-darkest#29f2c9AAA 🏅

把 src/css/custom.css 中的变量替换成这些新变量。

自动生成代码:覆盖并替换 /src/css/custom.css
[data-theme='dark'] {
--ifm-color-primary: #9bf9e6;
--ifm-color-primary-dark: #75f7dc;
--ifm-color-primary-darker: #62f6d8;
--ifm-color-primary-darkest: #29f2c9;
--ifm-color-primary-light: #c1fbf0;
--ifm-color-primary-lighter: #d4fcf4;
--ifm-color-primary-lightest: #ffffff;
}

6. 数学公式​

你会发现现在的markdown无法直接支持(Latex格式的)数学公式,你需要在项目中下载Math和Katex插件。

npm install --save remark-math@6 rehype-katex@7

这两个插件只在ES Module中可用,所以在原先CommonJS的docusaurus.config.js中:

docusaurus.config.js
const lightCodeTheme = require('prism-react-renderer/themes/github');
const darkCodeTheme = require('prism-react-renderer/themes/dracula');

而如上这样的静态导入方式是不可行的,我们需要将静态的module.exports改为动态的module.exports = async function createConfigAsync()。所以别忘了,在文件的最后删除module.exports = config;:

docusaurus.config.js
// module.exports = {
module.exports = async function createConfigAsync() {
const remarkMath = (await import('remark-math')).default;
const rehypeKatex = (await import('rehype-katex')).default;

return {
presets: [
[
'@docusaurus/preset-classic',
{
docs: {
remarkPlugins: [require('remark-math')],
rehypePlugins: [require('rehype-katex')],
},
},
],
],

// 将KaTex的CSS用“stylesheets”引用
stylesheets: [
{
href: 'https://cdn.jsdelivr.net/npm/katex@0.13.24/dist/katex.min.css',
type: 'text/css',
integrity:
'sha384-odtC+0UGzzFL/6PNoE8rX/SPcQDXBJ+uRepguP4QkPCm2LBxH3FA3y+fKSiJ+AmM',
crossorigin: 'anonymous',
},
],
};
};

// module.exports = config;