react-router 5.0.0和16.8都有问题
使用 NavLink 应用程序可以按 expected 的方式运行,但是使用 Link 时,我会收到错误消息,
元素类型无效:预期为字符串(对于内置组件)或类/函数(对于复合组件),但得到:未定义。您可能忘记了从定义文件中导出组件,或者可能混淆了默认导入和命名导入。
import React, { Component } from 'react';
import { Link } from 'react-router-dom';
import { Content } from '../../components/content/Content';
export class Home extends Component {
render() {
return (
<Content>
<Link to="/">Home Page</Link>
</Content>
);
}
}
[已解决]将功能组件转换为类时,我不重新启动应用程序。第一个没有history
提供的Router
道具
答案 0 :(得分:1)
从错误消息中:
您可能混淆了默认名称和命名导入
您应该混入import语句。请遵循以下约定来解决您的问题:
import Content from '...';
// for a default export
而不是命名导出:
import { Content } from '...'
// for a named export
答案 1 :(得分:-1)
错误的进口声明。
https://github.com/ReactTraining/react-router/blob/master/packages/react-router-dom/docs/api/Link.md
import { Link } from 'react-router-dom'
<Link to="/about">About</Link>