在react-router中传递多个参数

时间:2016-04-28 08:58:53

标签: reactjs

我正在尝试通过反应路由器链接到目的地的多个字符串。在目的地,我只得到我发送的第一个字符串,而不是其余的字符串。

 <li className='left-nav-link' id='nav-section1'>
              <Link to={this.props.section1} params={{naturalPersonId: 1, firstName: "foo"}} className={this.props.navSelection==='nav-section1'?activeClass:''} 
                    activeClassName={activeClass}>{this.props.nav1}</Link>
            </li>

在目的地,如果我做console.log(this.props.params)我看到:对象{naturalPersonId:1}作为输出,输出参数中没有firstName。为什么这样,我错过了什么?

2 个答案:

答案 0 :(得分:0)

您似乎使用的是旧版本,但我不记得params属性。无论如何,请检查最新的docs

将它们放在查询字符串

<li className='left-nav-link' id='nav-section1'>
          <Link to={ path: this.props.section1,
                     query: {naturalPersonId: 1, firstName: "foo"} }  className={this.props.navSelection==='nav-section1'?activeClass:''} 
                activeClassName={activeClass}>{this.props.nav1}</Link>
        </li>

或者创建匹配的<Route>并手动撰写<Link>。请查看文档&amp;在抛出这类问题之前来源

答案 1 :(得分:0)

试试这个:

TelephonyManager teleMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
String localeCountry = teleMgr.getNetworkCountryIso();
if (localeCountry != null) {
    Locale loc = new Locale("",localeCountry);
    Log.d(TAG, "User is from " + loc);
}