当前位置: 首页 > 知识库问答 >
问题:

使用redux react和react路由器时,属性“组件”无效

姚智
2023-03-14

在我的情况下,当使用连接从react-redux时,反应路由器不会将我的反应组件视为有效组件。并且有一个警告:失败proType:无效prop组件提供给Road

索引。js

import { connect } from 'react-redux'
import { createStore } from 'redux'
import { Provider } from 'react-redux'
import plattformApp from './reducers'

var React = require('react');
var ReactDOM = require('react-dom');
var ReactRouter = require('react-router');
var Router = ReactRouter.Router;
var Route = ReactRouter.Route;
var hashHistory = ReactRouter.hashHistory;
var Main = require('./components/Main');

let store = createStore(plattformApp)

ReactDOM.render(
  <Provider store={store}>
    <Router history={hashHistory}>
        <Route path='/' component={Main}>
        </Route>
    </Router>
  </Provider>,
  document.getElementById('app')
)

Main.js

var React = require('react');
var ReactRouter = require('react-router');
var Link = ReactRouter.Link;
var KNGui = require("../components/KNGui");
var Search = require("../components/Search");

var Main = React.createClass({
  render: function () {
    return (
        <div>
        </div>
    )
  }
});

function mapStateToProps(state) {
  return { test: state }
}

export default connect(mapStateToProps)(Main)

共有1个答案

仇浩旷
2023-03-14

现在var Main包含完整的模块。

要访问组件,您需要

var Main = require('./components/Main').default;

或者

import Main from './components/Main';

获取组件。

 类似资料:
  • 我正在尝试使用react路由器dom。当我将组件导出为 并将其作为路由中的组件使用如下- 我在Chrome控制台收到以下警告- 警告:失败的prop类型:无效的prop

  • 我已经设置了react路由器和一个组件来呈现一些页面组件。我的所有组件都呈现相同的布局(目前,稍后将是参数化的)。我的页面组件将内容“注入”到布局中,因此我不能让布局组件包装我的外部开关组件。它必须用作页面组件中的子级。 即使最终的html呈现与布局框架相同(它仅在布局的插槽部分内不同),react也会卸载并重新装载整个布局树。 我能理解重新渲染整棵树的反应。React会看到不同的顶部组件(每个位

  • react&React-Router的新功能。我正在使用react-router-4 我有以下组件-login-home-header-sidebar-content 登录组件没有标题或侧栏。 这就是我的路由 应用程序JS 然后在我的Home组件中,我有侧边栏和内容。 home.js呈现方法 侧边栏组件有一个链接,该链接具有“to”值“/home/dashboard”。 不幸的是,这并不奏效。单击

  • 我所遵循的教程使用的是React-Router 2.0.0,但在我的桌面上,我使用的是4.1.1。我试图搜索更改,但没有找到有效的解决方案。

  • Redux提倡使用具有单一状态的单一存储。但是,使用react router,您可以获得多个页面,每个页面都有自己的顶级根组件。 一个人应该如何用一个有多个页面的反应路由器应用程序连接redux?React-router 1.0不再允许您向路由传递道具,因此使路由器成为包含所有页面状态的顶级组件不再可能也不可行。

  • 我正在使用React和React路由器尝试将我的组件链接到一个项目中。我想从主页(当前组件)链接一张图片到另一个组件。 目前我可以点击图片,它有点像一个链接(有时点击后变成蓝色),尽管它没有链接到其他组件,没有错误显示,网址栏中没有任何变化。什么都没发生。 有什么想法吗?这是我的代码: 代码错误:react dom。发展js:17117上述错误发生在组件中:img(由Home创建)中div(由Ho