-
Notifications
You must be signed in to change notification settings - Fork 7.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Epic Free Games 路由异常 #13548
Comments
Searching for maintainers:
如果所有路由都无法匹配,issue 将会被自动关闭。如果 issue 和路由无关,请使用 |
Searching for maintainers:
如果所有路由都无法匹配,issue 将会被自动关闭。如果 issue 和路由无关,请使用 |
1 similar comment
Searching for maintainers:
如果所有路由都无法匹配,issue 将会被自动关闭。如果 issue 和路由无关,请使用 |
路由地址
完整路由地址
相关文档
https://docs.rsshub.app/routes/game#epic-games-store
预期是什么?
在 index.js 的第 44 行
const linkSlug = item.catalogNs.mappings.length > 0 ? item.catalogNs.mappings[0].pageSlug : item.offerMappings.length > 0 ? item.offerMappings[0].pageSlug : item.productSlug ? item.productSlug : item.urlSlug;
如果 item.catalogNs.mappings 数组的长度大于 0,就取 item.catalogNs.mappings[0].pageSlug 的值作为 linkSlug。
如果上述条件不满足,且 item.offerMappings 数组的长度大于 0,就取 item.offerMappings[0].pageSlug 的值作为 linkSlug。
如果前两个条件都不满足,且 item.productSlug 存在(不为 falsy 值,比如 null、undefined、false 等),就取 item.productSlug 的值作为 linkSlug。
如果前三个条件都不满足,就取 item.urlSlug 的值作为 linkSlug。
实际发生了什么?
在 index.js 的第 44 行
const linkSlug = item.catalogNs.mappings.length > 0 ? item.catalogNs.mappings[0].pageSlug : item.offerMappings.length > 0 ? item.offerMappings[0].pageSlug : item.productSlug ? item.productSlug : item.urlSlug;
判断 item.catalogNs.mappings 和 item.offerMappings 的长度大于 0 (即有内容存在) 时,使用 item.catalogNs.mappings 或 item.offerMappings
但是,当这两个值为 null 或 undefined 时,实际上无法读取长度,则会报 Cannot read properties of null (reading 'length') 错误
实际上,这种情况已经发生 (如下图)
部署
RSSHub 演示 (https://rsshub.app)
部署相关信息
Vercel
额外信息
这不是重复的 issue
The text was updated successfully, but these errors were encountered: