reactjs - 处理相同路由的两个动态路由处理程序?
问题描述
这是我们应用程序的布局:
- pages
- book-room
- index.tsx
- resort.tsx
这意味着对的请求/book-room/resort
将按顺序由index.tsx
和处理。 resort.tsx
所以...
如果index.tsx
在缺少查询参数时重定向,那么当这种情况发生时,度假村页面将在重定向发生时短暂呈现。这是不可取的。
那么问题是我怎么知道resort.tsx
一个请求已经被处理了(by index.tsx
)?有没有办法在处理请求时不触发?resort.tsx
index.tsx
这是我们的页面的样子:
import { NextComponentType, NextPageContext } from 'next';
import React, { useCallback } from 'react';
import { ParsedUrlQuery, Router, useRouter } from '../../../src/next/routes';
const SamplePage: NextComponentType<
NextPageContext,
PageProps
> = () => {
const { query, ready } = useRouter();
const { property } = query;
// this redirects if property is not valid
const propertyValid = useCheckPropertyParam(property, ready);
return (
<PageController
routeReady={ready}
routeParams={query}
/>
);
};
解决方案
推荐阅读
- java - 使用 Spring Data JPA 执行命名查询的数据库视图花费太长时间
- django - Django QuerySet 从一对多和从多对一
- sql - 我正在尝试使用(sql shell)显示postgres上已经存在的数据库,但我无法显示它们
- pytorch - 我在使用 pytorch 时收到此错误:RuntimeError:gather_out_cuda(): Expected dtype int64 for index
- javascript - 同步 spawn 和流事件输出 NodeJS
- laravel - 为什么资源控制器在 laravel 8 中不起作用?
- azure - 从 Azure 管道使用 Azure Active Directory 身份验证运行函数应用
- python - Python烧瓶API返回cookie但在浏览器中设置
- c - 在 C 中反转后无法打印字符串
- flutter - Flutter - 如何改变容器的旋转方向?