小编Pau*_*aul的帖子

React Typescript - 在路由中传递时如何将类型添加到 location.state

当我将 react-router props 传递给路由中的组件时出现错误,因为我有特定的状态,我传递了这个组件,但错误显示在我的路由中。

在此处输入图片说明

这是路由代码:

<Route
    exact
    path='/flipltimeline'
    render={props => <FliplTimeline {...props} />
Run Code Online (Sandbox Code Playgroud)

在另一个组件中,我在下面称之为

props.history.push(`/flipltimeline`, {
      Approval: singleFliplApprovals,
      InvestigationID,
      Unit: unit,
      Cost: cost
    });
Run Code Online (Sandbox Code Playgroud)

这是组件的代码。我终于得到了 Typescript 来编译它,但我必须合并 LocationState 和 TimelineState 才能让它工作。但是现在当我将道具发送到我的 FliplTimeline 组件时,Typescript 会抛出上面的屏幕截图。任何人都知道如何解决这个问题?

历史.tsx

import { createBrowserHistory } from 'history';

let baseNameProd = '';

if (process.env.NODE_ENV !== 'production') {
  console.log('Looks like we are in development mode!');
  baseNameProd = '';
} else {
  baseNameProd = '/flipl';
}

const customHistory = createBrowserHistory({
  basename: baseNameProd
});

export default customHistory;
Run Code Online (Sandbox Code Playgroud)

翻转时间线.tsx

import * …
Run Code Online (Sandbox Code Playgroud)

typescript reactjs react-router

8
推荐指数
1
解决办法
8492
查看次数

标签 统计

react-router ×1

reactjs ×1

typescript ×1