docusaurus国际化坑
发表于|更新于
|浏览量:
你不教训儿子,生活就一定会来教训他。——佚名
今天做apache-streampark文档国际化时踩到一个坑,其使用的框架docusaurus它支持多版本的管理,所以需要套一层current目录标识版本号
对应的pr:
https://github.com/apache/incubator-streampark-website/pull/256
就是将i18n/zh-CN/docusaurus-plugin-content-docs-community/移动到
i18n/zh-CN/docusaurus-plugin-content-docs-community/current/
加了一层current目录即可正确匹配上了
之前的效果:

现在:

相关推荐
2022-06-03
pnpm
曾因酒醉鞭名马,生怕情多累美人。——郁达夫 官方网址:https://www.pnpm.cn/ 我们在使用npm下载前端所需依赖时,会反复下载、重复下载,如果有一款工具,能够缓存起来我们的下载,那就是pnpm了 快速pnpm 是同类工具速度的将近 2 倍 高效node_modules 中的所有文件均链接自单一存储位置 支持单体仓库pnpm 内置了对单个源码仓库中包含多个软件包的支持 权限严格pnpm 创建的 node_modules 默认并非扁平结构,因此代码无法对任意软件包进行访问 安装很简单,就像普通安装一个模块一样即可: 12npm i -g pnpmpnpm -v 使用yarn 12yarn global add pnpmpnpm -v
2025-05-24
CircularProgressBar
丈夫志四海,万里犹比邻。—— 曹 植《赠白马王彪》 https://github.com/lopspower/CircularProgressBar Android 自定义控件推荐:CircularProgressBar 完美实现圆形进度条在 Android 开发中,进度条是一种非常常见的 UI 元素,用于展示任务的完成进度。虽然系统自带了 ProgressBar,但其样式单一,无法满足复杂的 UI 需求。为了解决这一问题,CircularProgressBar 提供了一种简单易用的解决方案,帮助我们轻松实现高度定制化的圆形进度条。 本篇文章将为你详细介绍 CircularProgressBar 的功能、特点以及如何快速上手使用。 什么是 CircularProgressBar?CircularProgressBar 是一个开源的自定义控件,用于实现 Android 中的圆形进度条。由 lopspower 开发,CircularProgressBar 提供了灵活的 API 和丰富的样式选项,可以轻松满足各种设计需求。 CircularProgressBar 的功能亮点 高...
2023-09-13
字体按宽度自适应大小
不用给我爱,不用给我钱,不用给我声誉,给我真理吧。——梭罗的《瓦尔登湖》 一般可以使用vw或者em一类的属性来适配,但如果还需要更小,就只能使用scale缩放了,例如使用js 1234567891011121314151617181920212223242526function scaleMemberName(memberElement: Element | null, reset: boolean) { if (!memberElement) { return; } const nameElement = memberElement.querySelector('.name'); if (!(nameElement instanceof HTMLDivElement)) { return; } if (reset) { nameElement.style.scale = String(); return; } const boundingBox ...
2022-06-16
react在ts中提示ref问题
不要太在乎一些人,越在乎,越卑微。——周国平 首先按照官方文档的demo写好代码,却报错如下: 安装插件Error Lens后: 如何解决? 前往Text的ref源码,可以看到是需要一个叫LegacyRef的类型 我们进LegacyRef,看到其就是Ref或string的类型 因此这里我们定义为Ref类型即可 这里出现了新的问题,不能将MutableRefObject<Text | null |undefined>分配给Ref<Text> 我们进入useRef源码,看到其包含几个重载 分别查看MuteableRefObject和RefObject 可以看到RefObject是Ref中容许的其中一种类型 所以应该使用上面一种重载 在原有代码React.useRef()中传入null 报错解决 同理,trRef一样 注意此处Ref<TextRef>内的泛型使用的是konva/lib/shapes/Text包下的Text,改名为TextRef 除了在定义变量左侧申明类型,在方法右侧也可以申明泛型,让编辑器自动推测
2024-10-06
vitesse-webext
知古不知今,谓之落沉。知今不知古,谓之盲瞽。——王充 分享一个由 Vite 提供支持的 WebExtension(Chrome、FireFox 等浏览器插件)的入门模板。 Github: https://github.com/antfu-collective/vitesse-webext 特性: ⚡️ Instant HMR - 在 dev 上使用 Vite(不再刷新! 🥝 Vue 3 - 组合式 API、<script 设置> 语法等等! 💬 轻松通信 - 由 webext-bridge 和 Vue使用存储提供支持 🌈 UnoCSS - 即时按需原子 CSS 引擎。 🦾 TypeScript - 类型安全 📦 组件自动导入 🌟 图标 - 直接从任何图标集中访问图标 🖥 内容脚本 - 即使在内容脚本中也可以使用 Vue 🌍 WebExtension - Chrome、Firefox 等的同构扩展 📃 具有完整类型支持的动态manifest.json 使用模板GitHub 模板Create a repo from this template o...
2024-07-03
js页面历史返回
历史是一堆灰烬,但灰烬深处有余温。——黑格尔 我们可以使用history.back()来进行页面返回 history的文档: History API - Web API | MDN 除了返回还可以前进 1history.forward(); 以及 12// 向后跳转一个页面(等价于调用 back())history.go(-1); 然后还有 12// 向前跳转一个页面,就像调用 forward()history.go(1); 当然传入0就是刷新 123// 以下语句都具有刷新页面的效果history.go(0);history.go(); 还有查看页面栈长度 1const numberOfEntries = history.length; 补充: 12345678910window.addEventListener("popstate", (event) => { alert(`位置:${document.location},状态:${JSON.stringify(event.state)}...

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog