【发布时间】:2023-03-13 18:35:01
【问题描述】:
我正在开发一个仅限客户端的 ReactJS 应用程序(仅供本地使用),我需要通过文件路径(URL 和本地文件系统)保存和加载图像。
路径存储在本地存储中,并且可以使用来自 URL 的图像。无论如何,本地图像不能,因为 ReactJS 正在使用项目目录,我无法转义它。
是否可以从本地文件系统打开具有绝对路径的文件,或者我可以/是否必须将其上传到项目目录中?
【问题讨论】:
我正在开发一个仅限客户端的 ReactJS 应用程序(仅供本地使用),我需要通过文件路径(URL 和本地文件系统)保存和加载图像。
路径存储在本地存储中,并且可以使用来自 URL 的图像。无论如何,本地图像不能,因为 ReactJS 正在使用项目目录,我无法转义它。
是否可以从本地文件系统打开具有绝对路径的文件,或者我可以/是否必须将其上传到项目目录中?
【问题讨论】:
您是通过浏览器运行它吗?如果是这样,浏览器上的 Javascript 还不能访问本地文件系统。我还没有尝试过,但您可以在本地运行 Node 并使用 ExpressJs 进行客户端-服务器通信。
如here所述:
你需要两件:
- 浏览器部分,与用户一起完成 UI。
- 一个节点片段,它在用户的机器上运行(因此可以访问文件系统),浏览器片段用来执行实际的文件操作。 可能最简单的片段交互方式是 HTTP,您可以使用 ExpressJS 轻松支持。
例如,如果用户想要删除一个文件:
- 用户点击某事说“删除此文件”
- 浏览器 JavaScript 通过 ajax 通过 HTTP 将命令发送到 Node 进程
- 节点进程执行删除并报告成功/失败
- 浏览器 JavaScript 显示结果
【讨论】: