Я хотел бы использовать регулярное выражение с переменной запроса graphql.
Это не возвращает результатов:
export const query = graphql`
query(
$episodes: String!
) {
episodes: allMarkdownRemark(
filter: { fields: { slug: { regex: $episodes } } }
) {
edges {
node {
id
}
}
}
}
`;
Однако это сработает:
export const query = graphql`
query() {
episodes: allMarkdownRemark(
filter: { fields: { slug: { regex: "/episodes/travel/" } } }
) {
edges {
node {
id
}
}
}
}
`;
что случилось?


Передача регулярного выражения через аргументы запроса должна работать, см. скриншот ниже. Убедитесь, что вы передаете регулярное выражение как строку, а не фактическое регулярное выражение. Кроме того, вам нужно избежать средней косой черты:
context: {
- episodes: /episodes/traveller/ <-- doesn't work
+ episodes: /episodes/traveller/.toString() <-- works
or episodes: "/episodes\/traveller/" <-- also works
}
Попробуйте это в одном из встраиваний graphiQL в эта страница