《深入react技术栈》学习笔记(一)初入React世界
前言以《深入学习react技术栈》为线索,记录下学习React的重要知识内容。本系列文章没有涵盖全部的react知识内容,只是记录下了学习之路上的重要知识点,一方面是自己的总结,同时拿出来和在学习react的人们一块分享,共同进步。 正文一:react简介网上能搜出来一大片,想要了解的自行谷歌,我们还是直奔学习的主题。 二:JSX语法JSX基本语法总结: 1.XML基本语法 标签可任意嵌套 const List =()=>( <div> <Title> <ul> <li></li> <li></li> </ul> </Title> </div> ); 注意事项总结: 2.元素类型 两种不同的元素:DOM元素和组件元素 const App =()=>( <Nav> {/*节点注释*/} <Person /* 多行注释 */ user={firstName:'hello',lastName:'world'} > </Nav> ); (3)DOCTYPE是没有闭合的,我们无法渲染它。常见的做法是:构造一个保存HTML的变量,将DOCTYPE与整个HTML标签渲染后的结果串联起来 3.元素属性 const Header = ()=>( <h3 title={title}>{childern}></h3> ); //调用: <Header title="hello,world">Hello,world</Header> (3)Boolean属性:省略的默认的JSX设为 true。要传入false时,必须使用属性表达式。这常用于表单元素 <checkbox checked/>等价为<checkbox checked={true}/> //如果想设置成false,必须: <checkbox checked={false}/> (4)展开属性:如果你不知道要设置哪些 props,那么现在最好不要设置它。因为React不能帮你你检查属性类型(propTypes)。这样即使组建的属性类型有错误,也不能得到清晰地错误提示。 (5)自定义HTML属性:在JSX中传入自定义属性,React是不会渲染的。如果要使用HTML自定义属性,要使用data-前缀(这与HTML标准是一致的)。 <div data-attr="xxx"/></div> 然而在自定义标签中,任意的属性都是支持的: <x-my-component custom-attr="foo"/> 4.javaScript属性表达式 const person = <Person name={window.isLoggedIn ? window.name : ""}>; (2)子组件也可以用作表达式 const person = <Person name={window.isLoggedIn ? <Nav/> : <Login>}; 5.HTML转义 下一篇内容我们讲React组件,欢迎关注。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |