hexo-theme-arknights
hexo-theme-arknights copied to clipboard
Valine评论问题
npm: 8.1.2
node: 16.13.2
hexo: 6.0.0
hexo-cli: 4.3.0
使用此主题构建带Valine评论的网页时未出错 但在测试网页功能时Valine评论刷新后消失 有时候把网页后?t=1xxxxxxxxxx去除后在所有网页或部分网页显示同一个评论 Valine后台Comments有记录
{
"nick": "Test",
"ip": "2409:*********:f007",
"updatedAt": "2022-02-09T00:30:51.390Z",
"ACL": {
"*": {
"read": true
}
},
"objectId": "62030**********83b49",
"mail": "****************@gmail.com",
"ua": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/******* (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/******",
"insertedAt": {
"__type": "Date",
"iso": "2022-02-09T00:30:49.910Z"
},
"createdAt": "2022-02-09T00:30:51.390Z",
"link": "https://**************",
"comment": "<p>test</p>\n",
"url": "/",
"QQAvatar": ""
}
附package.json
{
"name": "hexo-site",
"version": "0.0.0",
"private": true,
"scripts": {
"build": "hexo generate",
"clean": "hexo clean",
"deploy": "hexo deploy",
"server": "hexo server"
},
"hexo": {
"version": "6.0.0"
},
"dependencies": {
"hexo": "^6.0.0",
"hexo-browsersync": "^0.3.0",
"hexo-generator-archive": "^1.0.0",
"hexo-generator-category": "^1.0.0",
"hexo-generator-index": "^2.0.0",
"hexo-generator-searchdb": "^1.4.0",
"hexo-generator-tag": "^1.0.0",
"hexo-renderer-dartsass": "^0.1.2",
"hexo-renderer-ejs": "^2.0.0",
"hexo-renderer-marked": "^5.0.0",
"hexo-renderer-pug": "^3.0.0",
"hexo-renderer-stylus": "^2.0.0",
"hexo-server": "^3.0.0",
"hexo-theme-landscape": "^0.0.3"
}
}
应该是由于 pajx 引起的缓存问题。 经测试, Ctrl + F5 强制刷新页面后没有问题
要禁用 pajx 可以在 Hexo 目录下 _config.arknights.yml
文件中写:
# pjax 支持
pjax:
enable: false
version: '0.2.8'
刷新页面确实可以,但是会导致哪一个页面也没有评论 之前看到Valine的Issue有类似的问题,说和next自带的阅读量统计有冲突,将next升级到最新版本用Valine的阅读量就行,但在本主题中未找到相关设置 关闭pjax后可用
(今天看见,机房写,杂) 这是所有评论系统的已知问题,可以确认的无一支持 pjax 我也是今天才知道这个大坑 (以下为 gitalk 测试结果) 问题在于在 pjax push 页面的时候已经初始化好的对象里面的页面 id 设置并没有刷新 目前有两个思路:
- 查找 javascript 搞出构造函数重新生成
- 直接改进对象里
Valine 的构造对象机制不一样我目前无法测试
1.17.0 中已修复