加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

React学习日记

发布时间:2020-12-15 03:35:42 所属栏目:百科 来源:网络整理
导读:记录自己的学习开发过程。 1.当你在写react的时候报了这个错误或者警告:Each child in an array or iterator should have a unique “key” prop. 解决办法是在render每个循环的标签内添加属性key 至于为何这么搞 还有待研究。 returndivkey={key}Hello,{na

记录自己的学习开发过程。

1.当你在写react的时候报了这个错误或者警告:Each child in an array or iterator should have a unique “key” prop.

解决办法是在render每个循环的标签内添加属性key 至于为何这么搞 还有待研究。

return<divkey={key}>Hello,{name}!</div>

2.每个render只能返回一个根结果,如果是组合的话,要在组合之外加一层,包裹起来。


3.Invariant Violation: _registerComponent(...): Target container is not a DOM element.

就是一个找不到DOM节点的问题,将html文件中引用的js文件放到页面最后就好了,受加载顺序影响。


4.在使用ztree的时候,jsx中的初始化树的方法$.fn.zTree.init($("#ztree"),this.state.setting,this.state.zNodes);

其中红色部分一定要使用jquery或者原生js来获取元素节点,不能使用react中ref,

例如:

componentDidMount: function(){

var obj = this.refs.refZtree;

$.fn.zTree.init(obj,this.state.zNodes);

}

这样会报错:obj.attr is not a function,原因是在ztree在init方法执行时,可能是跟jquery装载机制有关系,这块还有待研究。


5.在使用map循环时,内部的事件如onClick会失效,应该在该map方法的尾部加上bind(this)

this.state.keys.map(function(key,i){

return <th key={i} className={st} onClick={this.handleSort} name={key}>{dataHeader[key]}</th>

}.bind(this))

添加到this.handleSort.bind(this)是不可以的,原因可能ES5标准的原因,记一下。


6.不要在map的时候进行return。而是先将map的结果保存到一个变量,然后return这个变量。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读