运行程序出现这样的错误。完整代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Hello React!</title>
<link rel="stylesheet" href="src/style.css" />
<script src="build/react.js"></script>
<script src="build/react-dom.js"></script>
<script src="build/browser.min.js"></script>
</head>
<body>
<div id="container"></div>
<script type="text/babel">
var option=[
{"className":"op1","value":"开始游戏"},
{"className":"op2","value":"排行榜"}
];
var Btn=React.creatClass({
render:function(){
<ul>
{
option.map(function (className,value) {
return
<li class={className}>
<input type="button" class="btn" value={value}/>
</li>
})
}
</ul>,
}
});
ReactDOM.render(
<Btn />,
document.getElementById('container')
);
</script>
</body>
</html>
怎么感觉语法不对啊:
你的return
呢?逗号也加错地方了
var Btn=React.creatClass({
render:function(){
return <ul>
{ option.map(function (className,value) {
return <li class={className}>
<input type="button" class="btn" value={value}/>
</li>;
})}
</ul>;
}
});
render 函数没有写 return
帮你改了一下, 下面是可运行的:
var option=[
{"className":"op1","value":"开始游戏"},
{"className":"op2","value":"排行榜"}
];
var Btn=React.createClass({
render:function(){
return <ul>
{option.map(function (it) {
return <li className={it.className}>
<input type="button" className="btn" value={it.value}/>
</li>
})}
</ul>
}
});
ReactDOM.render(
<Btn />,
document.getElementById('container')
);
主要是有几个点:
return 要添加
map 的使用方式
className
render方法需要return,ul后面加逗号有问题