【问题标题】:How to access Node.js package in React JS如何在 React JS 中访问 Node.js 包
【发布时间】:2020-03-31 18:15:00
【问题描述】:

我正在开发 React Serverless App using AWS 我想将 Node JS 特定包访问到 React js 中有哪些可能的替代方法可以在不使用后端 Node JS 的情况下访问 Node JS 包

font-list 是一个 Node.js 包,用于列出系统上可用的字体。 我想在前端访问这个包。

需要帮助!!

【问题讨论】:

  • 你想用什么包?如果该包发出文件系统请求,则不可能,因为 React 在浏览器中
  • @RadonirinaMaminiaina 作者说它是font-list。而且我相信他们知道它在浏览器中不起作用。
  • 对于这个特定的任务,您必须实现字体检测,这并非易事。看看github.com/Valve/fingerprintjs2 是如何做到的。
  • 在系统中安装字体后,基于React开发的Web上的Figma UI设计工具检测到它,并在Web上渲染。在网络选项卡上使用 XHR 请求 URL:127.0.0.1:44950/figma/… 他们是如何做到的?

标签: javascript node.js reactjs npm serverless


【解决方案1】:

为了回答更广泛的问题,一个适用于节点的包很可能只在节点生态系统中工作。

font-list 的情况下,它看起来像是在运行一个vbs 脚本来获取可用的字体(在Windows 的情况下)。由于安全限制,您无法在浏览器环境中运行类似的外部脚本或访问本地文件系统。

因此,要在浏览器中获取字体列表将需要一个自己的解决方案。你不能只使用 Node.js 包,即使它仍然是 js。

【讨论】:

  • 我正在开发一个字体管理器应用程序,在前端使用 React JS,在后端使用无服务器 Lambda 我想使用 react 访问系统字体有哪些可能的方法可以将系统字体访问到 React JS 应用程序。我是否必须将 NodeJS 与 React 和 Lambda 或任何可能的替代方法一起使用才能访问系统文件/目录?或如何使用 javascript 访问系统字体目录。需要帮助
  • @AliSyed 您将无法使用浏览器访问系统字体。它根本没有访问权限。您可以做的最接近的事情是检测浏览器可用的字体。有人对您的回答发表了评论,有很多方法可以做到这一点。
猜你喜欢
  • 2015-08-31
  • 2022-07-29
  • 2018-11-13
  • 2020-06-14
  • 1970-01-01
  • 2018-03-31
  • 1970-01-01
  • 2017-09-04
  • 1970-01-01
相关资源
最近更新 更多