如果React提供DOM协调,是否可以动态重新加载组件的代码并在编辑后重新呈现它?
我正在寻找一种解决方案,允许我编辑JSX文件,保存它,并让组件在浏览器中自行更新,无需重新加载页面,卸载它或丢失其状态.
理想情况下,这应该没有浏览器插件.
解决方法
您可以使用
react-hot-loader,一个插入式
Webpack加载程序,它可以为项目中的React组件进行实时编辑.无需浏览器插件或IDE挂钩.
它将Webpack Hot Module Replacement(HMR)与React结合在一起.
你可以使用这个:
>你的React组件没有令人讨厌的副作用;
>你愿意切换到Webpack的模块(它不难切换,see the walkthrough);
>你有几个小时(如果你已经使用Webpack,则需要几分钟).
这个怎么运作:
>它使用Webpack HMR API来了解“模块更新可用”事件.
>它将React.createClass调用更改为store the component’s prototype and later update it with fresh version的特殊createClass和updateClass函数;
>更新所有原型后,它会调用forceUpdate重新渲染组件.
有一个demo video,一个explanatory blog post和一个React tutorial app fork with live-edit configured.
这都是香草JS.