默认的react路由器就是这样使用的:
import * as React from 'react';
import { Router, Route, hashHistory } from 'react-router';
const routing = (
<Router history={hashHistory}>
<Route path="/login" component={Login}/>
</Router>
};当我包括“反应-路由器-中继”库,它增加了路由器的功能。也就是说,它向路由器组件(呈现和环境)添加了2个属性:
import * as React from 'react';
import * as Relay from 'react-relay';
import * as useRelay from 'react-router-relay';
import { Router, Route, hashHistory, applyRouterMiddleware } from 'react-router';
const routing = (
<Router history={hashHistory} render={applyRouterMiddleware(useRelay)} environment={Relay.Store}>
<Route path="/login" component={Login}/>
</Router>
};我该如何加强反应路由器的类型?
我试过很多种方法,最近的一种:
import { Router } from 'react-router';
declare module 'react-router' {
namespace Router {
export interface RouterProps {
environment?: any
}
}
}因为我需要扩展名称空间“路由器”和它下面的接口"RouteProps“。
响应路由器类型的链接:https://www.npmjs.com/package/@types/react-router
反应路由器中继库本身没有任何类型.
我发现的关于这个主题的所有信息:
发布于 2017-09-19 12:21:16
试试这个
declare module 'react-router' {
interface RouterProps {
environment?: any
render?: any
}
}它正在处理最新的反应路由器定义。
发布于 2017-09-18 12:54:35
<Router history={hashHistory} render={applyRouterMiddleware(useRelay)} environment={Relay.Store}>
<Route path="/login" component={Login}/>
</Router> 看起来登录(component={ login })不是Imported.Hence,它总是返回一个错误。
https://stackoverflow.com/questions/41103720
复制相似问题