【问题标题】:React failed to compile reactLifecyclesCompat errorReact 无法编译 reactLifecyclesCompat 错误
【发布时间】:2019-05-27 13:23:38
【问题描述】:

我的反应有问题。它的编译错误说:

编译失败

./node_modules/reactstrap/dist/reactstrap.es.js
Attempted import error: 'react-lifecycles-compat' does not contain a default export (imported as 'reactLifecyclesCompat').

我有以下依赖项

"dependencies": {
  "bootstrap": "^4.1.1",
  "react": "^16.7.0",
  "react-dom": "^16.7.0",
  "react-lifecycles-compat": "^3.0.4",
  "react-scripts": "2.1.2",
  "react-transition-group": "^2.5.2",
  "reactstrap": "^7.0.0",
  "uuid": "^3.3.2"
}

然后我创建了一个AppNavbar 组件,它只是一个简单的导航栏,位于“src/components/”位置,下面是我的AppNavbar 组件代码,它在文件末尾导出。

import React, { Component } from 'react';
import {
    Collapse,
    Navbar,
    NavbarToggler,
    NavbarBrand,
    Nav,
    NavItem,
    NavLink,
    Container
} from 'reactstrap';

class AppNavbar extends Component {
    state = {
        isOpen: false
    }

    toggle = () => {
        this.setState({
            isOpen: !this.state.isOpen
        })
    }

    render() {
        return (
            <div>
                <Navbar color="dark" dark expand="sm" className="mb-5">
                    <Container>
                        <NavbarBrand href="/">Shopping List!</NavbarBrand>
                        <NavbarToggler onClick={this.toggle} />
                        <Collapse isOpen={this.state.isOpen} navbar>
                            <Nav className="ml-auto" navbar>
                                <NavItem>
                                    <NavLink href="https://about.me">About</NavLink>
                                </NavItem>
                            </Nav>
                        </Collapse>
                    </Container>
                </Navbar>
            </div>
        );
    }
}

export default AppNavbar;

然后为了在页面上显示它,我将 AppNavbar 导入到 App.js 中,如下所示:

import React, { Component } from 'react';
import AppNavbar from './components/AppNavbar';

import 'bootstrap/dist/css/bootstrap.min.css';
import './App.css';

class App extends Component {
  render() {
    return (
      <div className="App">
        <AppNavbar />
      </div>
    );
  }
}

export default App;

【问题讨论】:

    标签: node.js reactjs reactstrap


    【解决方案1】:

    不是代码中的错误,而是reactstrap 导入它需要的依赖项的方式。看看:https://github.com/reactstrap/reactstrap/issues/1343.

    【讨论】:

    • 是的,我遇到了这个问题,现在我使用了 reactstrap 6.1.0,它现在工作正常!感谢您的回答
    猜你喜欢
    • 2021-02-15
    • 1970-01-01
    • 2021-02-07
    • 2017-12-11
    • 2011-08-16
    • 1970-01-01
    • 1970-01-01
    • 2017-06-05
    • 1970-01-01
    相关资源
    最近更新 更多