这个问题困扰了我好久,刚刚终于解决了,遂立马写下文章记录


网上几乎都是安装插件,比如

1
npm install hexo-asset-img --save

又或者

1
npm install hexo-asset-image --save

说是没问题,但我遇到情况是即使本地显示了,但线上还是不行

于是我看到hexo官网给出的方法

1. 安装插件hexo-renderer-marked

1
npm install hexo-renderer-marked --save

2.安装好后进入根目录的_config.yml文件中配置:

1
2
3
4
post_asset_folder: true
marked:
prependRoot: true
postAsset: true

创建文章,此时会在source/_posts生成同名文件夹,放置文章资源,

1
hexo n "xxx"

source/_posts就会出现 xxx.mdxxx 的文件夹

3.配置Typora

这样设置,其中路径为 ./${filename}

这个时候就可以直接截图或者复制图片到typora中,它会自动把图片塞入文件夹里,

可是即使hexo s 本地没问题 ,但hexo g 后生成的public下的文章目录还是有问题

理应是 类似

1
<img src="/2020/01/02/foo/image.jpg">

但实际上依旧是

1
<img src="/xxx/image.jpg">

应该是由于typora内部导致的,这个时候,我们继续安装插件

1
npm install hexo-image-link --save

安装完后就解决了typora与hexo路径不一致问题,这样重新复制一次图片测试就会发现在typora和hexo都可以显示图片了。