在使用反应和流星时,是否可以进行热重新加载?

时间:2015-08-17 11:45:49

标签: javascript meteor reactjs

我正在开发一个使用流星并做出反应的应用程序。

我的一个React组件如下所示:

MyModal = React.createClass({
    openModal() {
        this.setState({active: true});
    },
    closeModal() {
        this.setState({active: false});
    },
    getInitialState() {
        return {
            active: this.props.isVisible
        }
    },
    render() {
        return (
            <div className={"modal "+(this.state.active ? 'active' : '')}>              
                <div className="content">
                    <span className="closeModal fa fa-times" onClick={this.closeModal}></span>

                    {this.props.children}
                </div>
            </div>
        )
    }
})

现在,每当我更改组件代码时,整个页面都会重新加载并重置状态。有没有办法保持组件的当前状态?据我所知,使用反应热重载器可以实现这一点,但使用流星时是否也可以使用?

提前致谢!

2 个答案:

答案 0 :(得分:1)

您可以使用this package.

将Webpack与Meteor应用程序集成

如果您想从头开始,还有this boilerplate

在现有应用中开始使用webpack并非易事,但由于以下原因,它非常值得:

  • 使用React进行热重装
  • ES6模块:这是未来!
  • 代码拆分:仅在客户端加载应用程序的一部分,并在需要时加载其余部分。

答案 1 :(得分:0)

经过一段时间的研究,我们偶然发现了this boilerplate并继续前进。我们做了大量的自定义安排(特别是为了让测试与Meteor功能一起工作),现在它就像一个魅力。

正如另一个答案已经说过的那样#34;非常值得付出努力&#34;。