无法在反应js中读取null的属性'query'

时间:2017-06-21 10:08:16

标签: reactjs pagination

我已经在react-redux进程中应用了分页,并尝试在“mapStateToProps”函数中获取查询参数但是低于错误 - 调用浏览器网址是 - http://localhost:3000/blog-list?page_no=1

enter image description here

这是我的组件的代码段 -

std::vector<int> myvec(){
  std::vector<int> myvector;

  // do some push_back's

  return myvector;
}

std::string mystr(){
  std::string mystring = "hello";

  return mystring;
}

std::vector<int> myvector = myvec();
std::string mystring = mystr();

请让我知道我做错了什么,因为在控制台中你可以看到它放弃了routing.locationBeforeTransitions。不是'查询'..

1 个答案:

答案 0 :(得分:1)

您需要配置React-router-redux才能使用state.routing.locationBeforeTransitions.query.page_no‌​。但是还有其他方法可以做到。

如果您使用的是React-router v4,我假设

你需要使用一个支持查询解析的独立库,因为它的支持是从react-router v4中撤回的

您可以使用 query-string npm package

您可以获取

等数据
import queryString from 'query-string'

function mapStateToProps(state, ownProps){
    var queryParam = queryString.parse(ownProps.location.search);
    return { 
        blogListData: state.UserReducer.blogData,
        page: Number(queryParam.get('page_no') || 1,
    }
}