私は、任意の量のサブコンポーネントを追跡しようとしています。React:動的コンポーネントの参照の作成と参照
通常はthis.refs.refNameを参照するだけですが、私の場合、私は追跡する必要がある任意の量の参照を持っています。私は間違って私に知らせて問題にアプローチしていた場合
var NamesList = React.createClass({
getAllNames: function() {
// Somehow return an array of names...
var names = [];
this.refs.????.forEach(function (span) {
names.push(span.textContent);
})
},
render: function() {
var names = ['jack','fred','bob','carl'];
var spans = [];
names.forEach(function (name) {
spans.push(<span contentEditable={true} ref='?????'>name</span>);
});
return (
<div>
{spans}
</div>;
);
}
});
ReactDOM.render(<NamesList></NamesList>, mountNode);
:ここ
は簡潔な例です。私の望む結果は、RESTfulなサービスからReactコンポーネントにデータを渡し、ユーザーがそのデータを編集できるようにし、必要に応じて再度エクスポートすることです。 React refs docsでこれに対する答えを見つけることができませんでした。
申し訳ありませんが、私はスパンの名前を動的に取得しようとしています。あなたが行った変更は、_setting_ spanについてのものであるように見えます。疑似コードの場合:各スパンについて、textContentを取得し、配列として返します。それが私が求めていることを説明するのに役立つのですか? – joshuakcockrell
答えを2つのソリューションで更新しました。 2番目の解決策はスパンのtextContentを持つ配列を返しますが、refは使用しません。 ReactはtextContentの唯一の所有者でマネージャでなければなりません。したがって、名前を取得するためにrefを使用する必要はありません(また、バグ/管理不能なコードのソース)。 – wintvelt