Skip to content

使用vitepress踩的坑

January 9, 2023 | 08:27 PM

使用vitepress部署组件库文档时所的踩坑

在自定义组件的时候,之前的button input组件都没有任何的问题,但是在link组件的时候出现了问题,我自定义的组件样式被覆盖:

image.png

在翻阅文档的时候可以看见,vp-doc类为vitepress官方封装的类,他的作用便是去修饰所有的文档外观,由于vp-doc的优先级过高,所以将我的自定义组件的样式给覆盖了,这个时候我最开始是打算在link组件的源码上直接进行!import来提升优先级的,但仔细一想便知道这不行,组件是是拿来用的,本身的作用是更偏向于毛坯房的,我们应该将样式的选择权交给用户,所以这个方案就直接pass了

我又想到或许我可以直接查找到这个类,然后直接将其进行删除,就如同该代码所示:

image.png

结果就犯了第二个错误,让我的文档变成了这幅鬼样子:

image.png

文档默认样式都被删除了😭

这个时候我只能去官方文档库查阅issues,看看有没有其他的人遇见了这个情况,果然看见了类似的提问:https://github.com/vuejs/vitepress/issues/199,当时的团队成员和这位大佬便一起探讨出来了一个方案,便是进行样式隔离:image.png

于是我连忙翻阅vitepress文档,发现不知道什么时候多了个新的语法raw,有了这个语法便可以对自己写的组件进行样式隔离了!不用担心被其他的样式给覆盖,我连忙对自己的文档进行了修改(当时发生了一点小插曲,vp-raw没有立刻生效,而是在我完全重启vscode才生效😂详细为:https://github.com/vuejs/vitepress/issues/1777)

最终的呈现为:

image.png