无法在react-native中解析“uuid/v4”

bt1cpqcv  于 2023-03-24  发布在  React
关注(0)|答案(7)|浏览(207)

当我运行我的react-native项目时,它给出了以下错误:
编译失败。
未找到模块:无法解析“F:\App 2nd\chat 2\SecreteChat\node_modules\expo-constants\build”中的“uuid/v4”
我怎么解决这个问题?

cetgtptt

cetgtptt1#

您必须更新node_modules/expo-constants/exponentConstants.web.js
-- side note我一直在运行expo web,所以我不知道是否有Expoconstants.Android...或expoconstants. ios...,你也必须更新。我也一直在使用yarn add ____为我的大多数依赖项,所以如果你做了一些不同的事情,让我们知道。错误上面的错误行应该告诉你它是从我的来源说:

Y:/Serviced/inService/node_modules/expo-constants/build/ExponentConstants.web.js

导航到该文件,然后查看node_modules/expo-constants/exponentConstants.web.js中第3行

import uuidv4 from 'uuid/v4

并将其更改为:

import {v4 as uuidv4} from 'uuid';

这个错误的发生是因为node_modules/uuid中的文件结构,如果你看一下,不再有一个uuidv 4要导入,而是导出一个v4。你可以将开发人员编写uuidv 4的所有地方都改为v4,但是使用{ thisasthat }语法,你不必重写一堆代码。

oxcyiej7

oxcyiej72#

以下是我解决它的步骤:

  • 安装uuid(我假设你已经完成了)。

npm install uuid

  • 然后从uuid库导入uuidv4

const { v4: uuidv4 } = require('uuid');

  • 然后你可以继续使用它。例如:
const expenseList = [
   { id: uuidv4(), expenseItem: "rent", amount: 1000 },
   { id: uuidv4(), expenseItem: "car note", amount: 2000 },
   { id: uuidv4(), expenseItem: "mortgage", amount: 3000 },
];
wlwcrazw

wlwcrazw3#

我解决了这个问题...只是你不应该把这个:

import uuidv4 from 'uuid/v4'

但你应该把

import uuid from 'uuid/package.json'
7vux5j2d

7vux5j2d4#

这对我很有效

import * as uuid from 'uuid'

uuid.v4()
i5desfxk

i5desfxk5#

使用以下命令安装程序包:

npm install uuid
mpbci0fu

mpbci0fu6#

1.安装uuid模块

npm install uuid

1.创建UUID(ES6模块语法)

import { v4 as uuidv4 } from 'uuid';
uuidv4(); // ⇨ '9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d'

...或使用CommonJS语法:

const { v4: uuidv4 } = require('uuid');
uuidv4(); // ⇨ '1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed'

然后你可以用它来设置id,比如

const person = {
    id: uuidv4(),
    ....
}
emeijp43

emeijp437#

注意-我使用npm,不需要更改任何节点模块文件。
对我很有效-
从“uuid/v4”替换导入uuidv 4
使用import {v4 as uuidv 4} from“uuid”
希望这有帮助:)

相关问题