2

Typescript (.tsx) で記述された ReactJs コンポーネントで WebPack を動作させ、WebPack のホット モジュール置換を利用しようとしています。これを行う方法を説明するいくつかのレシピを見つけましたが、それらはすべて同じ問題を抱えているようです.renderメソッドで使用するコンポーネントクラスにフィールドがある場合、コードでそれを変更するとHMRが適切にトリガーされません. 、例えば

export default class Counter extends React.Component<ICounterProps, ICounterState> {
        ...
    label: string = 'Counter';
    render() {
        return <h1>{this.label}: {this.state.counter}</h1>;
    }
}

コード内の値を変更するlabelと、ページは更新されません。最初に見つけたスターター プロジェクトで GitHub に問題を作成し、さらに多くのプロジェクトを試しましたが、すべてこの問題が発生しています。これは大きな問題です。ページが更新されるかどうか確信が持てない場合、HMR 全体が無意味になります。また、これはバニラの .jsx コンポーネントで正常に機能することに注意してください。

誰かがこれを機能させる方法を持っていますか? どんな方向性でも大歓迎です。

4

2 に答える 2

0

webpack の設定をアップロードできますか?

Webpack's HMRそして、あなたが電力を供給するために正確にどのパッケージを使用していReact's componentsますか? react-hotまたはbabel-plugin-react-transform

を使用する場合は、 を使用するBabel 6ことをお勧めしますbabel-preset-react-hmre。これは私にとってはうまく機能します。

于 2016-01-24T21:57:18.257 に答える