Dump of stacktrace from Kibana log
我很困惑是什么原因造成的,因此我无法复制。除了React之外,我没有使用任何接触 dom 的库。我正在使用语义用户界面反应,并从语义用户界面css中导入了缩小的css,但是我认为这不是问题(这些都不是jquery的恶作剧)。 ServiceOrderWrapper.js 是一个高阶组件,它执行一堆api调用,然后相应地更新状态。如果其他人之前已经看到此错误并解决了这个问题,那真的很有帮助,是否有隔离该错误的好方法?
this.reportPromise = ServiceOrderAPI.MakeReport(dto, this.state.name);
this.reportPromise.promise
.then(() => {
this.handleGeneralApiSuccess(
Wrapper.stateKeys.subContractorAction,
{ action: null, isSubmitting: false },
'Serviceordern rapporterades som ingen åtgärd',
this.state
);
})
.catch(err => {
if (!this.reportPromise.isCancel(err)) {
this.handleGeneralApiError(
Wrapper.stateKeys.subContractorAction,
err.message
);
}
});
handleGeneralApiSuccess = (key, value, msg, prevState, extras = null) => {
const callback = () => {
if (msg != null && msg !== '') {
this.props.appendFeedback({ isError: false, msg });
}
this.conditionalReload(key, prevState, extras);
};
this.setStateWrapper(key, value, callback);
};
setStateWrapper = (key, value, callback) => {
this.setState(
prevState => ({
...prevState,
[key]: { ...prevState[key], ...value }
}),
callback
);
};
conditionalReload = (action, state, extras = null) => {
const reloadNecessary = shouldReloadServiceOrder(action, state, extras);
if (!reloadNecessary) {
return;
} else {
this.refresh();
}
};
refresh = () => {
this.setStateWrapper(
Wrapper.stateKeys.load,
{ isReloading: true },
this.loadFromServer
);
};
this.handleGeneralApiSuccess 是发生错误的位置,位于Kibana logg的759行
在这种情况下, shouldReloadServiceOrder 始终返回true