React 踩坑笔记

props可以用两种理解,一是可以被当做构建React节点的参数,二是可以被理解为HTML标签的属性。具体如下

  • props与一个已知HTML属性相同时,当他被加入最终DOM中的HTML元素时,它就是该元素的属性;
  • 当被传入React.createElement()中当做参数时,也可以是React node实例里的各种值。
  • 一些特殊的用法,比如说keyrefdangerouslySetInnerHtml

React Stateless Function Component(无状态函数组件)

如果一个组件里只需要props而不需要state,那么这个组件可以由纯函数方式创建,而不需要构建一个React组件的实例。

var MyComponent = function(props){

 return <div>Hello {props.name}</div>;

};

ReactDOM.render(<MyComponent name="doug" />, app);

  

时间: 2024-12-29 06:58:08

React 踩坑笔记的相关文章

React踩坑记(一)——API React和ReactDOM,擅自引入cdnjs的后果

今天开始学习React,一开始就遇到好多坑,花了不少时间(当然也是花费了指导我的那位大神的时间). 特此记录,也方便有人踩坑的时候避免这样的情况再出现. 中文网站和国外官网 首先说一下英文官网:http://facebook.github.io/react/index.html 作为一个英文差到极点的程序员小白,在这门技术面前毅然决然地选择了中文官网:http://reactjs.cn/ 但是!这是一个坑点,因为技术更新的原因,肯定在中文网的版本跟官网的版本是有落差的.所以在跟着中文网的教程敲代

新版react踩坑总结

使用es6语法与原本es5语法几个有区别的地方 1.React.creatClass与React.Component 1 var Component = React.createClass({ 2 render() { 3 return ( 4 <div></div> 5 ); 6 } 7 }); 1 class Component extends React.Component { 2 constructor(props) { 3 super(props); 4 } 5 rend

docker 踩坑笔记之 psql: could not connect to server

最近在用docker跑rails,也遇到了一些坑,这里记录一下. 首先build项目: docker-compose build 然后就开始报错了: psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432&q

航遇项目react踩坑

1.iconfont应用: a.正常用法如下 <span className='iconfont' > iconfont的代码,例如: </span> b.react不能动态渲染iconfont标签,需如下处理,icon为形参 <i dangerouslySetInnerHTML={{__html: icon}} className={'iconfont'} /> c.引入项目中:需要在项目中复制iconfont的地址代码,类似如下的地址,官网生成 @font-fac

react踩坑记录——使用fetch获取json数据报错

报错: 原因其实是list.json文件路径错误,该文件路径是相对于index.html的,而不是App.js或者index.js.

Java踩坑笔记:ObjectIOStream与IOStream的各种装饰器(先挖个坑,以后再来详细填)

Java的序列化和ObjectStream真是一个大坑.. 先不说多线程环境下的问题,在单线程里,一个Socket只能保持一个ObjectOutputStream,原因好像是在于ObjectOutputStream有锁机制或是阻塞之类的东西,否则会导致接受方出现"StreamCorruptedException : invalid type code AC",同理ObjectInputStream也只能保持一个,否则接收方会出现header错误的相关异常. 据说原因是ObjectOut

Laravel踩坑笔记——illuminate/html被抛弃

起因 在使用如下代码的时候发生报错 {!! Form::open() !!} 错误信息 [Symfony\Component\Debug\Exception\FatalErrorException] Call to undefined method Illuminate\Foundation\Application::bindShared() 原因 在Stack Overflow找到相关问题(Call to undefined method Illuminate\Foundation\Appli

appium 使用过程问题踩坑-笔记

问题1:虚拟设备选用问题 运行脚本抛出异常,创建session对象失败 排查过程:在进入cmd模式下: ①adb devices   --ok ②appium-doctor  --ok ③appium  --ok ④选择合适的虚拟设备 --解决问题 问题分析:某些虚拟机版本兼容性问题,导致无法获取虚拟机的信息,创建session对象失败

redis集群搭建踩坑笔记

推荐参考教程:https://blog.csdn.net/pucao_cug/article/details/69250101 错误: from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require' from /usr/local/redis-3.0.6/src/redis-trib.rb:25:in `<main>' 解决: gem install redis (最新) sudo gem install