使用 uuidv4 时出现此错误。
Failure: Package subpath './v4' is not defined by "exports" in C:\Users\mycomp\Desktop\Programming\Javascript\Serverless\Serverless Framework\node_modules\uuid\package.json
Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: Package subpath './v4' is not defined by "exports" in C:\Users\mycomp\Desktop\Programming\Javascript\Serverless\Serverless Framework\node_modules\uuid\package.json
我已经安装了 uuid 并且在我的代码中需要它
const uuidv4 = require('uuid/v4');
这是 package.json
  "dependencies": {
    "aws-sdk": "^2.702.0",
    "moment": "^2.27.0",
    "serverless-offline": "^6.4.0",
    "underscore": "^1.10.2",
    "uuid": "^8.1.0"
  }
小智 34
ECMAScript 模块语法:
import { v4 as uuidv4 } from 'uuid';
uuidv4(); // ? '9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d'
CommonJS 语法:
const { v4: uuidv4 } = require('uuid');
uuidv4(); // ? '1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed'
Mig*_*ejo 10
另外一个选择
const uuid = require('uuid');
uuid.v4(); // "c438f870-f2b7-4b2c-a1c3-83bd88bb1d79"
我们在 v1 uuid 模块 (v8.3.2) 中遇到了同样的错误。
解决了这个问题,将以下条目添加到已安装的uuidexports部分(在您的 内部):package.jsonnode_modules
"./v1": "./dist/v1.js"
我的项目的完整导出部分node_modules/uuid/package.json:
  "exports": {
    ".": {
      "node": {
        "module": "./dist/esm-node/index.js",
        "require": "./dist/index.js",
        "import": "./wrapper.mjs"
      },
      "default": "./dist/esm-browser/index.js"
    },
    "./package.json": "./package.json",
    "./v1": "./dist/v1.js"
  },
剩下的问题是我现在需要在 dist 安装中保留此修改...:/
这可以通过 uuid 源本身的补丁来修复吗?
编辑:不需要我们自己的源代码中的模块。它是 jest 的依赖项(通过一些 jest 报告子包)。
编辑:或者,回滚到 uuid depv7.0.3也可以解决此问题,请参阅下面的评论。
| 归档时间: | 
 | 
| 查看次数: | 20325 次 | 
| 最近记录: |