最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • React.js的一些笔记

    正文概述 掘金(陈进步)   2021-03-26   413

    一、style

    React.js 中的元素的 style 属性的用法和 DOM 里面的 style 不大一样,普通的 HTML 中的:

    <h1 style='font-size: 12px; color: red;'>React.js 小书</h1>
    

    在 React.js 中你需要把 CSS 属性变成一个对象再传给元素:

    <h1 style={{fontSize: '12px', color: 'red'}}>React.js 小书</h1>
    

    style 接受一个对象,这个对象里面是这个元素的 CSS 属性键值对,原来 CSS 属性中带 - 的元素都必须要去掉 - 换成驼峰命名,如 font-size 换成 fontSizetext-align 换成 textAlign

    用对象作为 style 方便我们动态设置元素的样式。我们可以用 props 或者 state 中的数据生成样式对象再传给元素,然后用 setState 就可以修改样式,非常灵活:

    <h1 style={{fontSize: '12px', color: this.state.color}}>React.js 小书</h1>
    

    只要简单地 setState({color: 'blue'}) 就可以修改元素的颜色成蓝色。

    二、prop-types

    npm install --save prop-types

    帮助我们验证 props 的参数类型,通过 isRequired 关键字来强制组件某个参数必须传入:

    ...
    static propTypes = {
    comment: PropTypes.object.isRequired
    }
    ...

    React.js 提供的 PropTypes 提供了一系列的数据类型可以用来配置组件的参数:

    PropTypes.array
    PropTypes.bool
    PropTypes.func
    PropTypes.number
    PropTypes.object
    PropTypes.string
    PropTypes.node
    PropTypes.element
    ...

    通过 PropTypes 给组件的参数做类型限制,可以在帮助我们迅速定位错误,这在构建大型应用程序的时候特别有用;另外,给组件加上 propTypes,也让组件的开发、使用更加规范清晰。

    三、小贴士

    这里插入一些小贴示,大家可以注意到我们组件的命名和方法的摆放顺序其实有一定的讲究,这里可以简单分享一下个人的习惯,仅供参考。

    组件的私有方法都用 _ 开头,所有事件监听的方法都用 handle 开头。把事件监听方法传给组件的时候,属性名用 on 开头。例如:

    <CommentInput  onSubmit={this.handleSubmitComment.bind(this)} />
    

    这样统一规范处理事件命名会给我们带来语义化组件的好处,监听(onCommentInputSubmit 事件,并且交给 this 去处理(handle)。这种规范在多人协作的时候也会非常方便。

    另外,组件的内容编写顺序如下:

    • static 开头的类属性,如 defaultPropspropTypes
    • 构造函数,constructor
    • getter/setter。
    • 组件生命周期。
    • _ 开头的私有方法。
    • 事件监听方法,handle
    • render开头的方法,有时候 render() 方法里面的内容会分开到不同函数里面进行,这些函数都以 render开头。
    • render() 方法。 如果所有的组件都按这种顺序来编写,那么维护起来就会方便很多,多人协作的时候别人理解代码也会一目了然。

    起源地下载网 » React.js的一些笔记

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元