我看了this:
ReactElement createElement(
string/ReactClass type,
[object props],
[children ...]
)
创建并返回给定类型的新ReactElement。类型 参数可以是html标签名称字符串(例如,' div',' span', 等)或ReactClass(通过React.createClass创建)。
这并没有真正向我解释[object props]
会发生什么。为什么需要它?它用于什么?
有人可以解释在致电[object props]
时createElement
会发生什么变化吗?它们是如何使用的?它们会用于渲染元素吗?他们以后可以改变吗?它们是可变的还是不可变的?
提问的理由:我正在试图找出how to use scalajs-react。
答案 0 :(得分:2)
前段时间,丹·阿布拉莫夫在Twitter上发布了此消息:
(我认为是abhirathore2006发布的“反应如何工作 - 实施说明”的开头)。
你可以在这里看到:http://jsbin.com/qiguyibolu/1/edit?js,output
例如,这就是道具发生的事情:
var node = document.createElement(type);
Object.keys(props).forEach(propName => {
if (propName !== 'children') {
node.setAttribute(propName, props[propName]);
}
});
它们最终成为节点属性!所以我真的建议你阅读https://facebook.github.io/react/contributing/implementation-notes.html以深入了解我们何时调用函数传递道具,以及我们如何更新它们。伙计们做了很好的工作,解释了事情是如何运作的。我实际上自己也是这样做的。)
答案 1 :(得分:1)
对于所有想知道反应如何实际起作用的人?结帐以下链接,为反应实施提供潜行峰值