我有以下store.ts
import { createStore } from 'redux';
const reducer = (state: any, action: any) => {
if (action.type === 'INC') {
return state+1;
}
return state;
}
//Create a dummy store
export const store = createStore(reducer, 0);
这主要是我在教程中运行的一个例子 - 一个没有多少进展的简单商店。
然后在我的component.tsx
import * as React from 'react';
import * as ReactDOM from 'react-dom';
import { store } from 'path/to/store';
store.subscribe(() => {
console.log('store changed', store.getState());
})
store.dispatch({type: 'INC', payload: 1});
...
所以当我加载页面时,我会在控制台中看到:
[HMR] Waiting for update signal from WDS...
[HMR] Waiting for update signal from WDS...
store changed 1
每当我修改component.tsx
文件时,我的webpack-dev-server
会重新加载,然后我会看到以下内容:
[WDS] App hot update...
[HMR] Checking for updates on the server...
store changed 2
store changed 2
所以看来我的商店是持久的,这很好,我甚至不介意它从2
更改为1
(因为有+1)。
但是我担心它出现两次,这让我觉得现在有两个例子。
有没有办法解决这个问题,或者这只是使用redux商店进行热重新加载的问题?
我正在使用webpack
,webpack-dev-server
,react-hot-loader