从零开始学React(4)——自定义组件

前一章是从零开始学React(3)——数组 http://my.oschina.net/u/2608629/blog/675799

从这一章开始,难度就加大了。首先,我们看一下什么是组件(component)。

React 允许将代码封装成组件(component),然后像插入普通 HTML 标签一样,在网页中插入这个组件。React.createClass 方法就用于生成一个组件类。

在HTML中一个标签就相当于一个组件,例如<div>,<img/>等都是组件。在这一章中,我们可以自己设计组件,然后自定义属性。

<!DOCTYPE html>
<html>
<meta charset="UTF-8">
<head>
<script src="../build/react.js"></script>
<script src="../build/react-dom.js"></script>
<script src="../build/browser.min.js"></script>
</head>
<body>
<div id="diy"></div>
<script type="text/babel">
	var NowTime = React.createClass({
		render : function (){
			return <div>现在{this.props.country}时间为:{new Date().getHours()+":"+new Date().getMinutes()+":"+new Date().getSeconds()}</div>;
		}
	});
	
	ReactDOM.render(
		<NowTime country="中国"/>,
		document.getElementById("diy")
	)
	
	
</script>
</body>
</html>

在这里我自定义了一个显示当前时间的组件<NowTime>,该组件有个country属性。使用该组件即可打印当前时间。

显示效果如图

182158_aKz3_2608629.png

注意点

  1. 组件第一个字母必须是大写
  2. 组件必须定义render方法,用于输入组件
  3. 在组件的return中,只能有一个顶级节点<div>,有多个时,会报错。
  4. 定义组件时设定this.props.xxx,这个xxx就是属性名。

在添加自定义组件属性时,设定class,for时,要写为className,htmlFor。因为class和for是javascript的关键字

转载于:https://my.oschina.net/zhangyafei/blog/675895

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值