这是什么.props(Meteor with React Tutorial)



我刚刚开始使用 es6 学习 Meteor with React,我很难理解这个.props。 它从何而来? 我没有任何代码可以自己为类定义它。 提前谢谢你。

这是我在simple-todos/imports/ui/App.jsx中的一部分代码:

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} />
    ));
  }
}

此 props 包含创建时传递给组件的属性。例如:

<SomeComponent someProperty={'foo'} />

现在,在SomeComponent中,您现在可以像this.props.someProperty一样访问someProperty

在此处阅读有关使用道具的更多信息。

它允许您制作更多"任意"组件。例如,假设您有一个从服务器提取的列表。

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.
    )
  }
}

这样,您只需将data数组传递给此组件

<List data={users} />

最新更新