jon*_*rpe 24
React Router v6 将历史分成多个部分,对于这个用例,相关部分是navigator和location。在Use useNavigate
instead ofuseHistory
中暗示了这种变化,您可以在propsNavigator
中使用的类型的定义中看到它:Router
export declare type Navigator = Omit<History, "action" | "location" | "back" | "forward" | "listen" | "block">;
只是更改history={history}
为navigator={history}
仍然保留未定义的location
道具,路由器试图从中访问pathname
(以及其他属性)。要使测试再次工作,请按如下方式更新渲染:
const { render } = require("@testing-library/react");
const { createMemoryHistory } = require("history");
const React = require("react");
const { Router } = require("react-router-dom");
it("works", () => {
const history = createMemoryHistory();
render(
<Router location={history.location} navigator={history}></Router>
);
});
更多推荐
路由,路径,属性,器中,页面
发布评论