相关疑难解决方法(0)

如何在React Router v4中推送到历史记录?

在当前版本的React Router(v3)中,我可以接受服务器响应并使用它browserHistory.push来转到相应的响应页面.但是,这在v4中不可用,我不确定处理它的适当方法是什么.

在此示例中,使用Redux,在用户提交表单时调用components/app-product-form.jsthis.props.addProduct(props).当服务器返回成功时,用户将进入购物车页面.

// actions/index.js
export function addProduct(props) {
  return dispatch =>
    axios.post(`${ROOT_URL}/cart`, props, config)
      .then(response => {
        dispatch({ type: types.AUTH_USER });
        localStorage.setItem('token', response.data.token);
        browserHistory.push('/cart'); // no longer in React Router V4
      });
}
Run Code Online (Sandbox Code Playgroud)

如何从React Router v4的功能重定向到Cart页面?

reactjs react-router react-router-v4

315
推荐指数
12
解决办法
41万
查看次数

react-router - 将props传递给处理程序组件

我使用React Router为我的React.js应用程序提供了以下结构:

var Dashboard = require('./Dashboard');
var Comments = require('./Comments');

var Index = React.createClass({
  render: function () {
    return (
        <div>
            <header>Some header</header>
            <RouteHandler />
        </div>
    );
  }
});

var routes = (
  <Route path="/" handler={Index}>
    <Route path="comments" handler={Comments}/>
    <DefaultRoute handler={Dashboard}/>
  </Route>
);

ReactRouter.run(routes, function (Handler) {
  React.render(<Handler/>, document.body);
});
Run Code Online (Sandbox Code Playgroud)

我想将一些属性传递给Comments组件.

(通常我会这样做<Comments myprop="value" />)

使用React Router,最简单,最正确的方法是什么?

javascript properties reactjs react-router

299
推荐指数
16
解决办法
16万
查看次数

react-router返回页面如何配置历史记录?

任何人都可以告诉我如何回到上一页而不是特定的路线?

使用此代码时:

var BackButton = React.createClass({

 mixins: [Router.Navigation],
  render: function() {
    return (
        <button
            className="button icon-left"
            onClick={this.navigateBack}>
            Back
        </button>
    );
  },

  navigateBack: function(){
    this.goBack();
  }
});
Run Code Online (Sandbox Code Playgroud)

得到此错误,goBack()被忽略,因为没有路由器历史记录

这是我的路线:

// Routing Components
Route = Router.Route;
RouteHandler = Router.RouteHandler;
DefaultRoute = Router.DefaultRoute;

var routes = (
 <Route name="app" path="/" handler={OurSchoolsApp}>
     <DefaultRoute name="home" handler={HomePage} />
     <Route name="add-school" handler={AddSchoolPage}  />
     <Route name="calendar" handler={CalendarPage}  />
     <Route name="calendar-detail" path="calendar-detail/:id" handler={CalendarDetailPage} />
     <Route name="info-detail" path="info-detail/:id" handler={InfoDetailPage} />
     <Route name="info" handler={InfoPage} />
     <Route name="news" handler={NewsListPage} />
     <Route …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-router

94
推荐指数
16
解决办法
21万
查看次数

如何在react-router v4上获取历史记录?

我有一些小问题从React-Router v3迁移到v4.在v3中我能够在任何地方执行此操作:

import { browserHistory } from 'react-router';
browserHistory.push('/some/path');
Run Code Online (Sandbox Code Playgroud)

我如何在第4版中实现这一目标.

我知道withRouter当你在Component中时,我可以使用,特别的,反应上下文或事件路由器道具.但事实并非如此.

我正在寻找v4 中NavigatingOutsideOfComponents的等价性

reactjs react-router

88
推荐指数
5
解决办法
9万
查看次数

你如何以编程方式更新react-router中的查询参数?

我似乎无法找到如何使用react-router更新查询参数而不使用<Link/>.hashHistory.push(url)似乎没有注册查询参数,似乎你不能将查询对象或任何东西作为第二个参数传递.

如何从更改URL /shop/Clothes/dresses,以/shop/Clothes/dresses?color=blue在反应路由器没有使用<Link>

并且onChange函数真的是监听查询更改的唯一方法吗?为什么不自动检测到查询更改并对响应更改的方式做出反应?

reactjs react-router

87
推荐指数
9
解决办法
10万
查看次数

如何摆脱React Router的Link组件的下划线?

我有以下内容:

在此输入图像描述

如何摆脱蓝色下划线?代码如下:

<Link to="first"><MenuItem style={{paddingLeft: 13, textDecoration: 'none'}}> Team 1 </MenuItem></Link>
Run Code Online (Sandbox Code Playgroud)

MenuItem组件来自http://www.material-ui.com/#/components/menu

任何见解或指导将不胜感激.先感谢您.

javascript reactjs react-router

85
推荐指数
11
解决办法
8万
查看次数

以编程方式使用react-router进行导航

我正在开发中,我检查,如果用户不是一个应用程序loggedIn我都显示登录表单,否则dispatch一个action将改变路线和加载其他组件.这是我的代码:

render() {
    if (isLoggedIn) {
        // dispatch an action to change the route
    }
    // return login component
    <Login />
}
Run Code Online (Sandbox Code Playgroud)

我怎么能实现这一点,因为我无法改变渲染功能内的状态.

javascript reactjs react-router redux react-router-v4

44
推荐指数
2
解决办法
2万
查看次数

在React-Router v4中以编程方式导航

我等不及了,我开始使用react-routerv4 的最新alpha版本.全新<BrowserRouter/>功能非常适合保持您的UI与浏览器历史记录同步,但如何使用它以编程方式进行导航?

reactjs react-router

32
推荐指数
7
解决办法
4万
查看次数

在不使用重定向或链接的情况下更改react-router v4中的URL

我在我的React应用程序中使用react-router v4material-ui.我想知道如果GridTileGridList中点击一下,如何更改URL .

我最初的想法是使用处理程序onTouchTap.但是,我可以看到重定向的唯一方法是使用组件RedirectLink.如何在不渲染这两个组件的情况下更改URL?

我试过this.context.router.push('/foo')但它似乎没有用.

javascript react-router material-ui react-router-v4

32
推荐指数
3
解决办法
7万
查看次数

反应按钮onClick重定向页面

我正在使用React和bootstrap开发Web应用程序.当应用按钮onClick时,我花了很多时间让我的页面重定向到另一个.如果在一个href后,我不能去另一页.

那么请你告诉我是否需要使用反应导航或其他方法使用Button onClick导航页面?

import React, { Component } from 'react';
import { Button, Card, CardBody, CardGroup, Col, Container, Input, InputGroup, InputGroupAddon, InputGroupText, Row, NavLink  } from 'reactstrap';

class LoginLayout extends Component {

  render() {
    return (
 <div className="app flex-row align-items-center">
        <Container>
     ...
                    <Row>
                      <Col xs="6">                      
                        <Button color="primary" className="px-4">
                            Login
                         </Button>
                      </Col>
                      <Col xs="6" className="text-right">
                        <Button color="link" className="px-0">Forgot password?</Button>
                      </Col>
                    </Row>
               ...
        </Container>
      </div>
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

javascript reactjs bootstrap-4

26
推荐指数
11
解决办法
10万
查看次数