问题标签 [nanoid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
349 浏览

javascript - 在 Vue 中使用 nanoid 失败并出现“缺少文件扩展名 cjs”

我想在我的 Vue 项目中使用 nanoid。我都试过了:

但是 webpack 失败了

添加后缀也无济于事:

如何解决?

0 投票
1 回答
248 浏览

javascript - 重复的程序执行是否会增加唯一 ID 冲突的机会

我知道像 UUID 和 nanoid 这样的唯一 id 生成器的意义在于,碰撞不应该在很长一段时间内发生。但是随后重新执行程序会增加机会吗?

示例:(我对 RNG 或 UUID 了解不多,因此这可能无法完全反映该过程,但此示例将解释我问这个问题的原因)

第一次执行: nanoid 使用种子 0 进行初始化。它将产生的 id 链将是 A、B、C、D...等。而且我们在这个特定的链中很长一段时间都不会再看到 A、B、C,所以在这个程序执行期间,没有什么可担心的。

随后的执行:使用 0 种子初始化 nanoid 将是一个明显的问题,但即使它不一样,我假设从种子生成的元素并不是该种子独有的。

  • 种子 0 -> A,B,C,D......
  • 种子 1 -> W,X,Y,Z.....A...B,C

因此,即使选择了不同的种子,在某些时候仍然可以达到相同的 ID。

我的想法是否正确,这值得担心吗?

0 投票
1 回答
262 浏览

node.js - 使用 Node shortid / nanoid 并检查数据库中的冲突

我正在从事一个在 Node.js 中构建 URL 缩短器的自学项目。我本来打算使用 shortid ,但它已被弃用,所以我改用nanoid。我担心的是最终可能与数据库中生成的 ID 和现有 ID 发生冲突(通过 Knex)。问题不完全是“加密级”,更多的是由于数据库中已经存在新的短 URL ID 而导致应用程序崩溃的功能问题。我想出了以下假设的解决方案(不是我的实际代码!)。这样做看起来是正确的(最好的、高效的、漂亮的等)方式吗?

0 投票
1 回答
68 浏览

python - 长度 4 使用 UUID 四次与长度 16 使用一次相同吗?

我的情况是这样,我需要为人们提供一个他们可以用来登录的一次性代码。这些人不懂技术。他们需要提供人类可读的代码。

格式与此类似;

一组 4 乘 4 人类可读的字符。对于总共 16 个字符,这作为 UUID 似乎是相当安全的。但是如果需要可以很容易地扩展。

现在,是否使用说 NanoID 4 次来生成一个 4 个字符的长字符串,相当于使用它一次来生成一个 16 个字符的字符串,然后将其切碎?我觉得是这样的。以编程方式实现任何一个都很简单。但是,我真的很想知道实际的事实答案。如果某个数学专家会放纵我?

编辑:回答问题;

  • 这是为了让人们可以访问只有他们应该可以访问的照片,例如护照照片、学校照片等。人们使用代码一次将照片链接到他们的电子邮件,并从他们使用电子邮件/密码组合登录时开始。在这种情况下,让人们事先使用电子邮件注册不是一种选择。
  • 我知道使用十六进制数字是常见的情况。我需要易于人类阅读。因此,将 16 位十六进制块切割成 4 个不同的部分似乎是合乎逻辑的步骤。
  • 选择的字母将是 az AZ 0-9 并排除一些符号,例如 0/o/O 和 I/1/l 以限制错误。这将允许用更少的字符表示相同的 ID。
  • 我现在知道,NanoID 不是 UUID 实现。比。但对于我的目标,我认为这已经足够了。如果没有,我也想知道。
  • 我正在使用 Python 3
0 投票
2 回答
1521 浏览

react-native - Nanoid 不能用于 react-native

我不知道当我在 react native 中使用nanoid包时发生了什么,它显示了某种以下错误。我不确定。

我希望有人能从这个社区得到帮助。

提前致谢。

场景:我只是导入到 nanoid 包。

0 投票
1 回答
70 浏览

laravel - 如何将 nanoid 包从 npm 导入 Laravel?

我将使用从 nodejs 到 laravel 的 nanoid 包使用唯一编号,但我得到了错误。

这是我的控制器。

这是我的 app.js

当我使用 nanoid 时,会出现这样的错误

在此处输入图像描述

语法错误,意外 '=' ,期待 ']'。我应该怎么做?或者您可以给出其他意见以生成唯一编号?

0 投票
0 回答
152 浏览

aws-lambda - AWS Lambda (nanoid) 中的 /var/task/node_modules/nanoid/package.json 中的“exports”未定义包子路径“./index.cjs”

我的 NodeJS Lambda 在尝试使用时因此错误而失败nanoidor uuid

这是使用的代码:

其他信息:

0 投票
4 回答
121 浏览

javascript - 如何在 nodejs 中安装 nanoid?

我目前正在尝试在我的(Firebase)nodejs 项目中导入和使用 nanoid。我安装了它

我试着用

我尝试的一切都失败了。我是 nodejs 和 js 本身的完整初学者,但没有网站或文档帮助我解决问题。我只想要一个唯一的 id :(

这是我的 index.html (减少到最低限度:

应用程序.js:

0 投票
0 回答
27 浏览

typescript - 无法将第三方工具与 TectCafe Studio 集成

我是 TestCafe 和 TypeScript 的新手。

我试图按照教程将 NanoID 模块集成到 TestCafe。但它显示一个错误说Cannot find module 'nanoid' or its corresponding type declarations. (2307)

但是当我尝试使用 uuid 时,它适用于以下代码。

我该如何解决这个问题,或者你能推荐我另一个像 faker.js 这样的模块吗?
(我想为测试目的生成随机数据)

0 投票
0 回答
76 浏览

javascript - 为什么我在重置状态时出现错误?反应

我目前正在使用 React 构建一个测验类型的游戏。

但是,有时我会随机出现错误。

它显示给我的错误是:

我认为问题不在这里。我认为这可能是状态的问题,它在完成后没有重置问题。我想知道如何在完成后重置问题组的状态,以便它可以重新开始测试。我还不确定这是否是问题所在,所以任何帮助表示赞赏,谢谢。

此外,这是处理逻辑的问答游戏的一部分。我仍然不确定问题出在哪里,并且一直在努力解决一段时间。

谢谢!