Attempted import error: 'uuid' does not contain a default export (imported as 'uuid') In React
Attempted import error: 'uuid' does not contain a default export (imported as 'uuid') In React
错误是:尝试导入错误:'uuid' 不包含默认导出(导入为 'uuid')
这是代码示例
import uuid from "uuid";
//import * as uuid from "uuid";
import TodoInput from "./components/TodoInput";
import TodoList from "./components/TodoList";
export default class App extends Component {
state = {
items: [
{ id: 1, title: "wake up" },
{ id: 2, title: "make breakfast" }
],
id: uuid(),
item: "",
editItem: false
};
....
....
这背后的原因是什么?
npm i react-uuid
import uuid from 'react-uuid';
const id = uuid();
因为 uuid
包没有 default
导出,正如错误明确指出的那样。
(它曾经存在,但已经removed)
Once installed, decide which type of UUID you need. RFC4122 provides for four versions, all of which are supported here.
(文档位于 https://www.npmjs.com/package/uuid)
因此您需要选择以下其中一项
import {v1 as uuid} from "uuid";
// import {v3 as uuid} from "uuid";
// import {v4 as uuid} from "uuid";
// import {v5 as uuid} from "uuid";
取决于您想要的实现方式。
如果您使用的是旧版本的软件包,您可以使用其中一个
import uuid from 'uuid/v1'
// import uuid from 'uuid/v3'
// import uuid from 'uuid/v4'
// import uuid from 'uuid/v5'
创建版本 4(随机)UUID
从 'uuid' 导入 { v4 作为 uuidv4 };
id:uuidv4(); // ⇨ '9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d'
https://www.npmjs.com/package/uuid
在命令行中,运行
npm i react-uuid
然后在您的项目中尝试
import uuid from 'react-uuid';
const id = uuid();
我认为如果在导入 v4 时添加 uuid 我认为它会起作用
我的意思是这样的
import uuid from 'uuid/v4';
执行 yarn add uuid
后,node_modules 中的 uuid 文件夹包含 v1、v2、v3、v4 模块。根据您的选择将其中任何一个导入为 uuid。
import {v4 as uuid} from 'uuid'
const id = uuid()
这解决了我的问题。
版本 "uuid": "^7.0.3" 和 "react": "^16.13.1",
这对我有用。
首先,运行
npm install uuid
然后
import { v4 as uuidv4 } from 'uuid';
要使用它只需调用
uuidv4();
已删除默认导出,如 npm page of UUID 中所述。
来自nmpjs.com
Default Export Removed
uuid@3 was exporting the Version 4 UUID method as a default export:
const uuid = require('uuid'); // <== REMOVED!
This usage pattern was already discouraged in uuid@3
and has been
removed in uuid@7
.
写
const uuid = require('uuid');
而不是
import uuid from 'uuid'
之前可以访问默认状态,这在新版本中不可用。
请浏览更新:https://www.npmjs.com/package/uuid.
import { v4 as uuidv4 } from 'uuid';
npm 文档中的包中提供了其他可能的访问方式。
而不是做:
从 'uuid'
导入 uuid
这对我有用(用于创建随机字符串):
从 'uuid/v4'
导入 uuid
import uuid from 'uuid/dist/v4'
这会起作用
在命令行中安装uuid:
npm i react-uuid
在您的项目中:
import { v4 as uuid } from "uuid";
const id = uuid();
我用过这个:
import v1 from 'uuid/v1.js'
const uuid = v1;
成功了!!
这对我有用。
首先,运行
npm install uuid
然后
import { v4 as uuidv4 } from 'uuid';
要使用它只需调用 uuidv4()
。
删除 node_modules 和 package-lock.json 并重新安装 npm install 和 npm install react-scripts.
- 纱线添加uuid
- 从 'uuid'
导入 {v4 作为 uuid}
- console.log(uuid());
正如其他人已经指出的那样,解构变量:
const { v4 as uuid } from 'uuid';
在您的代码中使用:
const id = uuid();
如果您在 Jest 测试中遇到此错误,请将以下内容添加到您的 moduleNameMapper:
moduleNameMapper: {
'^uuid$': 'uuid'
}
有时(由于某些 incomplete/interrupted 依赖项安装)您需要做的就是删除 node_modules
文件夹并再次 运行 npm install
。
瞧(在大多数情况下)。
错误是:尝试导入错误:'uuid' 不包含默认导出(导入为 'uuid')
这是代码示例
import uuid from "uuid";
//import * as uuid from "uuid";
import TodoInput from "./components/TodoInput";
import TodoList from "./components/TodoList";
export default class App extends Component {
state = {
items: [
{ id: 1, title: "wake up" },
{ id: 2, title: "make breakfast" }
],
id: uuid(),
item: "",
editItem: false
};
....
....
这背后的原因是什么?
npm i react-uuid
import uuid from 'react-uuid';
const id = uuid();
因为 uuid
包没有 default
导出,正如错误明确指出的那样。
(它曾经存在,但已经removed)
Once installed, decide which type of UUID you need. RFC4122 provides for four versions, all of which are supported here.
(文档位于 https://www.npmjs.com/package/uuid)
因此您需要选择以下其中一项
import {v1 as uuid} from "uuid";
// import {v3 as uuid} from "uuid";
// import {v4 as uuid} from "uuid";
// import {v5 as uuid} from "uuid";
取决于您想要的实现方式。
如果您使用的是旧版本的软件包,您可以使用其中一个
import uuid from 'uuid/v1'
// import uuid from 'uuid/v3'
// import uuid from 'uuid/v4'
// import uuid from 'uuid/v5'
创建版本 4(随机)UUID
从 'uuid' 导入 { v4 作为 uuidv4 };
id:uuidv4(); // ⇨ '9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d' https://www.npmjs.com/package/uuid
在命令行中,运行
npm i react-uuid
然后在您的项目中尝试
import uuid from 'react-uuid';
const id = uuid();
我认为如果在导入 v4 时添加 uuid 我认为它会起作用
我的意思是这样的
import uuid from 'uuid/v4';
执行 yarn add uuid
后,node_modules 中的 uuid 文件夹包含 v1、v2、v3、v4 模块。根据您的选择将其中任何一个导入为 uuid。
import {v4 as uuid} from 'uuid'
const id = uuid()
这解决了我的问题。 版本 "uuid": "^7.0.3" 和 "react": "^16.13.1",
这对我有用。
首先,运行
npm install uuid
然后
import { v4 as uuidv4 } from 'uuid';
要使用它只需调用
uuidv4();
已删除默认导出,如 npm page of UUID 中所述。
来自nmpjs.com
Default Export Removed
uuid@3 was exporting the Version 4 UUID method as a default export:
const uuid = require('uuid'); // <== REMOVED!
This usage pattern was already discouraged in
uuid@3
and has been removed inuuid@7
.
写
const uuid = require('uuid');
而不是
import uuid from 'uuid'
之前可以访问默认状态,这在新版本中不可用。
请浏览更新:https://www.npmjs.com/package/uuid.
import { v4 as uuidv4 } from 'uuid';
npm 文档中的包中提供了其他可能的访问方式。
而不是做: 从 'uuid'
导入 uuid这对我有用(用于创建随机字符串): 从 'uuid/v4'
导入 uuidimport uuid from 'uuid/dist/v4'
这会起作用
在命令行中安装uuid:
npm i react-uuid
在您的项目中:
import { v4 as uuid } from "uuid";
const id = uuid();
我用过这个:
import v1 from 'uuid/v1.js'
const uuid = v1;
成功了!!
这对我有用。
首先,运行
npm install uuid
然后
import { v4 as uuidv4 } from 'uuid';
要使用它只需调用 uuidv4()
。
删除 node_modules 和 package-lock.json 并重新安装 npm install 和 npm install react-scripts.
- 纱线添加uuid
- 从 'uuid' 导入 {v4 作为 uuid}
- console.log(uuid());
正如其他人已经指出的那样,解构变量:
const { v4 as uuid } from 'uuid';
在您的代码中使用:
const id = uuid();
如果您在 Jest 测试中遇到此错误,请将以下内容添加到您的 moduleNameMapper:
moduleNameMapper: {
'^uuid$': 'uuid'
}
有时(由于某些 incomplete/interrupted 依赖项安装)您需要做的就是删除 node_modules
文件夹并再次 运行 npm install
。
瞧(在大多数情况下)。