使用 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
Run Code Online (Sandbox Code Playgroud)
我已经安装了 uuid 并且在我的代码中需要它
const uuidv4 = require('uuid/v4');
Run Code Online (Sandbox Code Playgroud)
这是 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"
}
Run Code Online (Sandbox Code Playgroud)
小智 34
ECMAScript 模块语法:
import { v4 as uuidv4 } from 'uuid';
uuidv4(); // ? '9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d'
Run Code Online (Sandbox Code Playgroud)
CommonJS 语法:
const { v4: uuidv4 } = require('uuid');
uuidv4(); // ? '1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed'
Run Code Online (Sandbox Code Playgroud)
Mig*_*ejo 10
另外一个选择
const uuid = require('uuid');
uuid.v4(); // "c438f870-f2b7-4b2c-a1c3-83bd88bb1d79"
Run Code Online (Sandbox Code Playgroud)
我们在 v1 uuid 模块 (v8.3.2) 中遇到了同样的错误。
解决了这个问题,将以下条目添加到已安装的uuidexports部分(在您的 内部):package.jsonnode_modules
"./v1": "./dist/v1.js"
Run Code Online (Sandbox Code Playgroud)
我的项目的完整导出部分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"
},
Run Code Online (Sandbox Code Playgroud)
剩下的问题是我现在需要在 dist 安装中保留此修改...:/
这可以通过 uuid 源本身的补丁来修复吗?
编辑:不需要我们自己的源代码中的模块。它是 jest 的依赖项(通过一些 jest 报告子包)。
编辑:或者,回滚到 uuid depv7.0.3也可以解决此问题,请参阅下面的评论。
| 归档时间: |
|
| 查看次数: |
20325 次 |
| 最近记录: |