Javascript 反应你好世界不';我不能用ES6
我的代码怎么了?我在jsbin的控制台中没有看到任何错误Javascript 反应你好世界不';我不能用ES6,javascript,reactjs,Javascript,Reactjs,我的代码怎么了?我在jsbin的控制台中没有看到任何错误 Class SecondComponent扩展了React.Component{ render(){ 返回( 我的id是:{this.props.id} ); } } 反应( , document.getElementById('react\u example') ); 以及如何在React.render()中呈现多个组件?如果您希望使用道具,您(可能)需要一个构造函数(请参阅此答案下面的注释) import React,{Com
Class SecondComponent扩展了React.Component{
render(){
返回(
我的id是:{this.props.id}
);
}
}
反应(
,
document.getElementById('react\u example')
);
以及如何在React.render()中呈现多个组件?如果您希望使用道具,您(可能)需要一个构造函数(请参阅此答案下面的注释)
import React,{Component}来自'React';
从'react dom'导入{render};
类SecoundComponent扩展了组件{
建造师(道具){
超级(道具);
this.props=props;
}
render(){
返回(
我的id是:{this.props.id}
)
}
}
render(,document.getElementById('react_example');
还要注意,我将类命名为
SecoundComponent
,大写字母为S。首先,您必须使用ReactDOM
将组件呈现给浏览器,而不是React
。
您的代码是:
React.render(
<secondComponenent id="abc" />,
document.getElementById('react_example')
);
要使其工作,您可以将其添加到html中
第二,当组件没有这样的子组件时,您必须关闭它:
,您的代码是这样写的:
为了在react中渲染多个组件,必须使用单个父组件包装它们,例如:
ReactDOM.render(
<div>
<firstComponenent id="abc" />
<secondComponenent id="abc" />
</div>,
document.getElementById('react_example')
);
ReactDOM.render(
,
document.getElementById('react\u example')
);
p.S:另外,正如@alexi2所说:
class-SomeComponent
不是class-SomeComponent
,有几个小的语法错误阻碍了你。小写表示类,大写表示命名组件,并关闭要渲染的组件。下面的代码在JSBin中工作
class SecondComponent extends React.Component {
render(){
return (
<p>My id is: {this.props.id}</p>
);
}
}
React.render(
<SecondComponent id="abc" />,
document.getElementById('react_example')
);
class SecondComponent扩展了React.Component{
render(){
返回(
我的id是:{this.props.id}
);
}
}
反应(
,
document.getElementById('react\u example')
);
类名必须以大写字母开头。@Whitcik不能解决问题是的,你是对的,如果react
版本低于0.14
,则不需要它。但对于最新版本,无论如何都必须使用ReactDOM
。也许有帮助:。这不是真的。你需要使用构造函数来使用这个。状态
,但是道具会自动应用。你说得对,@JoshuaComeau,但是如果你想在构造函数中使用道具,那么你需要使用超级(道具)
。请参见True-如果定义自己的构造函数,则需要确保组件的原始构造函数仍然接收道具。否则,您的构造函数将覆盖原来的构造函数,并且将永远不会设置此.props
。这太复杂了,为什么上面alex2的答案在没有导入任何内容的情况下有效?您可能只是从外部库中获取React和ReactDOM;-)这是更多的“es6-y”方法。
ReactDOM.render(
<secondComponenent id="abc" />,
document.getElementById('react_example')
);
ReactDOM.render(
<div>
<firstComponenent id="abc" />
<secondComponenent id="abc" />
</div>,
document.getElementById('react_example')
);
class SecondComponent extends React.Component {
render(){
return (
<p>My id is: {this.props.id}</p>
);
}
}
React.render(
<SecondComponent id="abc" />,
document.getElementById('react_example')
);