本篇不能完全解决问题,只是思路记录;
现象:
在 使用 laravel 的 mpociot/laravel-apidoc-generator 生成中文 api 文档的时候
菜单栏的标题如果使用中文,会出现问题,可以显示,但是不能通过点击跳转到对应的位置;
产生原因:laravel 的生成api文档的组件中引用的是 tocify 这个插件
这个 tocify 插件是国外的人写的,压根就没考虑中文编码的问题
去github上看了一下,有位国内的道兄去提了这个问题,结果因为用中文提的这个问题,直接被关闭了,
目前看来这个问题也没被处理;
解决这个问题,需要修改这个插件中关于 这个 hashValue 生成的算法处理
item = $("<li/>", {
// Sets a common class name to the list item
"class": itemClassName,
"data-unique": hashValue
}).append($("<a/>", {
"text": self.text()
}));
但是,需要gulp去重新编译使用,我这里尝试了下,但是由于环境的问题放弃了继续解决;
如果是非要解决不可,那么就需要自己去搭环境改代码了,这里只提供一下思路
如果需要去改,那么你可以在上面 laravel 项目的 resources/docs/source 下进行,这个就是插件项目,安装依赖和 gulp ,然后去修改处理jquery.tocify,js ,最后编译就行