2016-08-30 4 views
2

React-Routerでは非常に奇妙な動作に直面しています。以下のリアクトの私のコンポーネントのコードです:React-Routerでのhrefはありません

import React, { PropTypes } from 'react'; 
import {Router, Route, IndexRoute, Link} from 'react-router' 

export default class LinkWidget extends React.Component { 
render() 
    { 
    return (
     <li> 
      <Link className="page-scroll" to={"#" + this.props.path}>{this.props.name}</Link> 
     </li> 
    ); 
    } 
} 

そのレンダリングでは、私は、hrefのプロパティなしに次のHTML、すなわち、アンカータグを取得しています。

<ul class="nav navbar-nav navbar-left"> 
    <li class="hidden"> 
     <a href="#page-top"></a> 
    </li> 
    <li> 
     <a class="page-scroll">Services</a> 
    </li> 
    <li> 
     <a class="page-scroll">Portfolio</a> 
    </li> 
    <li> 
     <a class="page-scroll">About</a> 
    </li> 
    <li> 
     <a class="page-scroll">Team</a> 
    </li> 
    <li> 
     <a class="page-scroll">Contact</a> 
    </li> 
    </ul> 

これは他のコンポーネントでも同様に起こります。私は何かが欠落していることを知っているが、私はそれが何であるかの手がかりを持っていない。私はReactとReact Routerを試している初心者です。どんな助けもありがとう。おかげで、事前ある:)

----更新----

は、ここで部品は(リアクト開発者ツールを使用した)ように見える反応する私のものです:

LinkWidget

私は私はここで何か間違っているが、私は得ることができない。

アップデート2

私は、コンテナコンポーネントパターンを以下だし、私が何とか間違ったルートファイルを書いている可能性がある可能性があります。私は静的データを渡しているときになぜそれが問題になるのか理解できません。

誰かがコンテナコンポーネントパターンを使用してルーティングをガイドできますか。

+0

この機能をテストした例フィドルのリンクはあなたのthis.props.pathが適切に親から来プロップですか?一度印刷して確認できますか?親コンポーネントを一度共有することもできます。そこから、小道具がLinkWidgetに渡されます –

+0

小道具が正しく返されています@HarkiratSaluja。私はもう一度それをチェックした。 – Aakanksha

+0

@Aakankshaこの 'to = {\'#$ {this.props.path} \ '}'を使うのはどうですか? – Thanh

答えて

2

解決策はto attribute in Lin kで簡単です。"#"を追加しないでください。リンク属性変換は、アンカーhrefに自動的に​​を追加するようなものです。

使用:以下

import React, { PropTypes } from 'react'; 
import {Router, Route, IndexRoute, Link} from 'react-router' 

export default class LinkWidget extends React.Component { 
render() 
    { 
    return (
     <li> 
      <Link className="page-scroll" to={this.props.path}>{this.props.name}</Link> 
     </li> 
    ); 
    } 
} 

私は

JSFIDDLE

+0

私もこれを試しましたが、href propなしで同じ方法でアンカーをレンダリングします。 – Aakanksha

+0

@Aakankshaはthis.props.pathの値を確認できます –

+0

はい、私は 'this.props.path'を取得します。私は質問を更新しました、それを見てください。私は本当に小さいものを見逃しているかもしれません。 – Aakanksha

関連する問題