浏览代码

Add error if trying to setFileState for a file that’s been removed

Artur Paikin 7 年之前
父节点
当前提交
968e09a831
共有 1 个文件被更改,包括 4 次插入0 次删除
  1. 4 0
      src/core/Core.js

+ 4 - 0
src/core/Core.js

@@ -182,6 +182,10 @@ class Uppy {
   * Shorthand to set state for a specific file.
   * Shorthand to set state for a specific file.
   */
   */
   setFileState (fileID, state) {
   setFileState (fileID, state) {
+    if (!this.getState().files[fileID]) {
+      throw new Error(`Can’t set state for ${fileID} (the file could have been removed)`)
+    }
+
     this.setState({
     this.setState({
       files: Object.assign({}, this.getState().files, {
       files: Object.assign({}, this.getState().files, {
         [fileID]: Object.assign({}, this.getState().files[fileID], state)
         [fileID]: Object.assign({}, this.getState().files[fileID], state)