经验方面的:
1、在拿到项目时不要上去就直接写,只是粗糙的读了一遍文档就直接上这个了(效率是真的低,也佩服自己的勇气),要先搞明白项目中所用到的技术栈,要是遇到没见过的要先看一下,至少知道这个技术是干什么的,怎么用。否则可能会导致搞不清项目的结构和整体框架的思路。写代码之前的框架思路才是第一位的,否则可能很长时间做的都是无用功。
2、遇到bug不要慌,先找到报错点然后捋清这块儿的思路,业务逻辑和数据流是怎样的,要是逻辑上没有错误看一下技术栈中是否有方法用错了。(这个项目大概就这三种错误)
3、代码风格逻辑:能复用的代码一定要单独提出来(以后再用到的话真的很方便,并且更利于以后的代码改动),一定要多写注释,虽然命名上都有含义,但是时间一长还是会忘记具体功能和含义,更别说其他同事了。 遇到很多类型相同固定变量最好将他们汇集成一个枚举,也是方便日后代码修改。
技术方面的:
1、基础知识真的很重要,这个项目中用到的技术栈typescript、react、antd。一定要理解react底层实现原理(虚拟dom,更新机制,钩子函数,等)。
采坑一:setState后的代码没有按期执行。读了一遍官方文档api。
1、setState是异步的。并且为了获得更好的感知性能,React 可能会延迟它,然后一次更新多个组件。
2、setState会使组件刷新。
3、setState((state, props) => stateChange, callback]) 立即更新 callback在setState完成后立即执行。
·也可以加上await。
·更新时最好将多个setState合并更新。
二:如何实现父组件和子组件的数据绑定(数据在父组件,展示改动在子组件):使用componentDidMount和componentDidUpdate配合。
三:项目的构建工具也是非常重要的,webpack,babel,tsconfig等等,一定要耐心把这些工具使用熟练,会对以后的工作有很大的帮助。
一些小坑就先不写了。。。