google调试react(186)

今天死活断点不了,google了好久;发现有个debugger放入代码中就好了,可以看堆栈了。

断点不了的问题至今没找到,气死人了。!

好吧v2ex果然大神多,jsx需要编译产生sourcemap后才能被调试,所以webpack是标配。另外react-hot-loader(js库)和react-devtools(google插件)不错

Create React Appgenerator-react-webpack会自动生成react项目,使用webpack自动打包,但是dev-source-map模式下无法调试。

其它模式参考:https://segmentfault.com/a/1190000004280859

调试的jsx,一般都是被打包成js的,很好看,也方便调试(就google->source 那里找源码有点不好找,打包多了)。

调试

react developer toolsreacttab那里,使用控制台(如果没有就在三个点那里Show console drawer),
鼠标选中组件,控制台输入$r $r.props来查看当前组件的信息(这些信息右边板块看不到的,另外第一个下拉框必需选top才能识别);
也支持直接调用$r.setState({message: 'Hello world!'}

断点

还可以用debugger;代码来手动添加,这对部分代码很友好

// //