01-完整代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JSX练习</title>
</style>
</head>
<body>
<!-- 准备好一个容器 -->
<div id="test"></div>
<script type="text/javascript" src="../js/react.development.js"></script>
<script type="text/javascript" src="../js/react-dom.development.js"></script>
<script type="text/javascript" src="../js/babel.min.js"></script>
<script type="text/babel">
//伪造数据
const myId=['a','b','c']
const VDom=(
<div>
<h1>字母列表</h1>
<ul>
{
myId.map((item,index)=>{
return <li key={index}>{item}</li>
})
}
</ul>
</div>
)
//渲染页面
ReactDOM.render(VDom, document.getElementById('test'))
</script>
</body>
</html>
02-代码解释:
根据7大规则,大括号里面写js表达式,
所以不要在里面写关键字语句
03-代码段解释:map+箭头函数
作为一个半路入坑java程序员,我表示这一段代码是个什么鬼?
const VDom=(
<div>
<h1>字母列表</h1>
<ul>
{
myId.map((item,index)=>{
return <li key={index}>{item}</li>
})
}
</ul>
</div>
)
一顿百度之后,稍微明白了,
(1)首选调用了,myId中map方法
那么好了一个问题来了,什么是map方法:
map() 方法,就是返回一个由原数组中的每个元素调用一个指定方法后的返回值组成的新数组。
可以参考文章:js 自带的 map() 方法
(2)map方法里面有啥?
请看2,函数,
a,传入两个参数(item,index)
b,=>
表示(function
)关键字缩写
c,返回 <li key={index}>{item}</li>
(3)结果-解惑
也就是,他们并不是像我们平时写的代码一样,
单独写在一块,根据不同参数,复用。
他们是先调用,后写内容
。