Mongoose $push 打字稿错误

Ari*_*her 5 mongoose typescript webpack ts-loader

似乎使用 mongoose 或 @types/mongoose 进行的某些软件包升级现在导致 mongoose $push、$pull、$addToSet 和 $each 运算符出现新的打字稿错误。例如:

await User.findByIdAndUpdate(request.user._id, {
      $push: {
        mediaList: { $each: mediaIDs },
      },
    });
Run Code Online (Sandbox Code Playgroud)

将鼠标悬停在 $each 上我可以看到:

   Type 'string[]' is not assignable to type 'never'.ts(2322)
Run Code Online (Sandbox Code Playgroud)

我对其他运算符也遇到了同样的问题(类型“无论给定类型”不能分配给类型 never)。我想这也可能与 webpack 升级和 ts-loader 升级有关。我在用着:

"@types/mongoose": "^5.2.4",
"mongoose": "^5.2.4",
"ts-jest": "^21.2.4",
"ts-loader": "4.1.0",
"ts-node": "^3.2.0",
"tslint": "^5.11.0",
"typescript": "^3.1.6",
"webpack": "^4.42.1",
"webpack-cli": "^3.3.11"
Run Code Online (Sandbox Code Playgroud)

Ari*_*her 1

将 //@ts-ignore 添加到上面的行似乎可以使打字稿检查器平静下来,并且查询仍然有效。