这是一部史诗级血泪史,记录了我在学习和实际开发中踩过的各种坑,以及我最后是怎么把这些坑填平的,这篇文章是不断更新的,遇到了就会更新一点上来
ThreeJS
坑:ThreeJS使用tween.js后,导致camera的lookAt和control的target失效
- 解决方法: 在使用tween的时候暂停control的使用 this.persControls.enabled = false; // 运动前 xxxx 这里使用 camera的lookAt this.persControls.enabled = true; // 运动后
坑:在dom中手动创建了canvas标签,渲染报错
- 解决方法: 官网中的案例都是直接用的div,所以在webglCanvas不需要传入画布,会去创建一个新的canvas。我们从最新的源码可以发现如果手动创建了canvas,就需要把它元素传给render渲染器
坑:项目总:requestAnimationFrame(this.animate); 更新动画的手会报错
- 解决方法:
首先原因是requestAnimationFrame是window全局对象,所以this会指向window,而window下肯定是没有animate方法的,所以需要更改this中的指向。
bind中传入的就是对象
// requestAnimationFrame的this是指向window的,这里改成的指向initModels
// bind的作用:改变this的指向,指到调用animate的对象
requestAnimationFrame(this.animate.bind(this));
git
git默认对大小写不敏感,如果只是大小写不同的两个文件,git会提交不了(没有任何改动提示)
- 解决方法: 在需要辨识大小写的仓库下执行以下命令:
git config core.ignorecase false
项目工程化
拿到别人提交过来的项目修改package.json后配置依赖能通过,但是项目跑不起来,因为没有删除:yarn-lock和package-lock.json。
原因是:锁定依赖结构本来是好的,但是下载源锁定了,必须这里也要更改
一定要对你电脑的数据进行备份!!!
国庆节在实验室写代码,写着写着电脑就关机了,然后再也打不开了,找了售后检测后说固态和机械硬盘都坏了,听到这个消息,心态都炸了,我的各种数据、代码、论文资料全在里面。以后一定要定期对自己的数据进行备份啊!
写着写着就留下了伤心的眼泪 (≧0≦)呀~~~
其他地方找到我:
知乎:www.zhihu.com/people/berl…
博客园:www.cnblogs.com/berlinss/