2016-05-19 14 views
0

私はちょうどes6を使ってReactでMeteorを学び始めていますが、私はこの問題を理解するのに苦労しています。それはどこから来たのですか?私は自分自身でクラスのために定義するコードはありません。前もって感謝します。this.props(Meteor with Reactチュートリアル)

import React, { Component, PropTypes } from 'react'; 
import { createContainer } from 'meteor/react-meteor-data'; 
import ReactDOM from 'react-dom'; 

import { Tasks } from '../api/tasks.js'; 

import Task from './Task.jsx'; 

class App extends Component { 
    renderTasks() { 
    return this.props.tasks.map((task) => (
     <Task key={task._id} task={task} /> 
    )); 
    } 
} 
+3

は、あなたが反応ドキュメントを読んでいるこのコンポーネントにdataの配列を渡すことができますか? https://facebook.github.io/react/docs/tutorial.html#using-props – azium

答えて

1

この小道具は、作成時にコンポーネントに渡されるプロパティが含まれています

これは、単純な-トドス/輸入/ UI/App.jsxでの私のコードの一部です。例えば:

<SomeComponent someProperty={'foo'} /> 

今すぐSomeComponentの内側にあなたが今someProperty小道具hereの使用についての詳細を読む

this.props.somePropertyようにアクセスすることができます。

+0

ありがとう、これは正しいですか? ''タグは、someComponentのコンストラクタを呼び出し、jSONオブジェクト(キー値のペアのテーブル)を作成します。 jSONオブジェクトは、現在のコンポーネントのメンバである 'props'に変換されます。 'this.props'には、タグに渡されたすべてのプロパティ(たとえば' someProperty = {'foo'} ')とデフォルトのプロパティが含まれます。あなたがそのコンポーネント( 'SomeComponent')のプロパティにアクセスしたいときは、' this.props.someProperty'を通してそれにアクセスしなければなりません。 –

+0

右のように聞こえますが、私は専門書に答えるためにリンクされたドキュメントを残します。 – hansn

0

これにより、より「任意の」コンポーネントを作成することができます。たとえば、サーバーからフェッチするリストがあるとします。

export default class List extends Component { 
    static propTypes = { 
    data: PropTypes.array.isRequired 
    } 
    render() { 
    return (
     //you can now be sure that the proptypes are what you wanted them to be. 
    ) 
    } 
} 

そのように、あなただけの

<List data={users} /> 
関連する問題