【问题标题】:what does this.props.txt do in this snippet?this.props.txt 在这个片段中做了什么?
【发布时间】:2016-02-25 08:41:33
【问题描述】:

我正在阅读“React Native for iOS Development”这本书来学习没有任何 react.js 经验的 react native 开发。 一些代码让我困惑了一段时间,评论后的代码:

var App = React.createClass({
  render: function() {
    // why there is this line and what does 'this' in the line stand for?
    var txt = this.props.txt
    return (
            <div>
              <h1>{myProp}</h1>
            </div>
            );
  },
});
React.render(
    <App myProp='Hi from prop' />, document.getElementById('container'));

这是整个 js 文件,它将从一个 html 文件中引用,其中有一个 id="container" 属性的 div 标签。而已。 任何帮助将不胜感激。

【问题讨论】:

    标签: javascript reactjs react-native


    【解决方案1】:

    这段代码好像有错误,应该是行

     var myProp = this.props.myProp
    

    this 在这个上下文中是对即将被渲染的 React 组件的引用。

    【讨论】:

    • 非常感谢!最后,经过一些调试,我更清楚地了解了它是如何工作的。正如您所提到的,sn-p 中有一个错误,我按照您的建议进行了更正。一切正常。除了一个问题,如果this 指的是要渲染的 React 组件,返回函数的参数是什么?应该是 React 组件吧?
    • return 不是函数而是语句。括号只是为了清楚起见。 render 函数返回一个 JSX,它在转译为 javascript 后被转换成一堆 React.createComponent() 调用
    • 哦,对return这个词有多大的误解。您能否给我一些有关React.createComponent() 的更多详细信息,甚至是链接或其他内容?我做了一些谷歌搜索并翻阅了这本书。没有找到太多。
    • 对不起,我的错误。实际上是React.createElement。下面是 JSX 的一些介绍以及它是如何被翻译成 JavaScript 代码的:facebook.github.io/react/docs/displaying-data.html
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-17
    相关资源
    最近更新 更多