store 报错处理
This commit is contained in:
parent
904864cb47
commit
96cfb18c9f
|
@ -424,6 +424,7 @@ export default class FileControl extends React.Component<FileProps, FileState> {
|
||||||
newFile.error = error;
|
newFile.error = error;
|
||||||
} else {
|
} else {
|
||||||
newFile = obj as FileValue;
|
newFile = obj as FileValue;
|
||||||
|
newFile.name = newFile.name || file!.name;
|
||||||
}
|
}
|
||||||
files.splice(idx, 1, newFile);
|
files.splice(idx, 1, newFile);
|
||||||
this.current = null;
|
this.current = null;
|
||||||
|
|
|
@ -328,6 +328,9 @@ export default class Form extends React.Component<FormProps, object> {
|
||||||
|
|
||||||
async onInit() {
|
async onInit() {
|
||||||
const {onInit, store, submitOnInit} = this.props;
|
const {onInit, store, submitOnInit} = this.props;
|
||||||
|
if (!isAlive(store)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// 先拿出来数据,主要担心 form 被什么东西篡改了,然后又应用出去了
|
// 先拿出来数据,主要担心 form 被什么东西篡改了,然后又应用出去了
|
||||||
// 之前遇到过问题,所以拿出来了。但是 options loadOptions 默认值失效了。
|
// 之前遇到过问题,所以拿出来了。但是 options loadOptions 默认值失效了。
|
||||||
|
@ -339,7 +342,11 @@ export default class Form extends React.Component<FormProps, object> {
|
||||||
const hooks: Array<(data: any) => Promise<any>> = this.hooks['init'] || [];
|
const hooks: Array<(data: any) => Promise<any>> = this.hooks['init'] || [];
|
||||||
await Promise.all(hooks.map(hook => hook(data)));
|
await Promise.all(hooks.map(hook => hook(data)));
|
||||||
|
|
||||||
if (isAlive(store) && store.initedAt !== initedAt) {
|
if (!isAlive(store)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (store.initedAt !== initedAt) {
|
||||||
// 说明,之前的数据已经失效了。
|
// 说明,之前的数据已经失效了。
|
||||||
// 比如 combo 一开始设置了初始值,然后 form 的 initApi 又返回了新的值。
|
// 比如 combo 一开始设置了初始值,然后 form 的 initApi 又返回了新的值。
|
||||||
// 这个时候 store 的数据应该已经 init 了新的值。但是 data 还是老的,这个时候
|
// 这个时候 store 的数据应该已经 init 了新的值。但是 data 还是老的,这个时候
|
||||||
|
|
Loading…
Reference in New Issue