在React:找不到模块中:无法解决“ react-router-dom”

时间:2018-08-07 10:36:33

标签: reactjs typescript react-router-dom

enter image description here enter image description here

import * as React from 'react';
import Root from './Root';
import './App.css'
import {session} from './libs/session';
import {Redirect} from "react-router-dom";

export default class App extends React.Component {

    public componentWillMount() {
        console.log("componentWillMount App");
    }

    public componentDidMount() {
        console.log("componentDidMount App");
        console.log(window.location.search.replace(/\?/g,''));
        const urlParmes = window.location.search.replace(/\?/g,'');
        session.token = urlParmes.replace(/^token=/g,'');
    }


  public render() {
      if (session.token === '' || session.token === null || session.token === 'undefined') {
          console.log('no Jurisdiction');
          return (<Redirect to='/'/>);
      } else {
          console.log('has Jurisdiction')
      }
    return (
      <div className="App">
        <Root />
      </div>
    )
  }
}

我的目的是检测“令牌”,然后将其重定向到登录页面。 这就是为什么?请帮我。谢谢

4 个答案:

答案 0 :(得分:4)

必须安装路由器,我使用以下命令解决了安装问题:

npm i react-router-dom --save

答案 1 :(得分:1)

您需要在react..go上输入Typescript定义,以便进行纱线或npm搜索@ types / react-router-dom,然后将其粘贴到终端中并运行

答案 2 :(得分:0)

从react router文档中,重定向似乎是react-router import { Route, Redirect } from 'react-router'

的一部分

答案 3 :(得分:0)

cd 在应用程序工作目录中,然后运行:npm install @reach/router