用例
我正在构建一个支持翻译的应用程序。我想象的方式是该应用程序默认情况下会附带英语,并将被发送到其他地方。例如,到达德国时,用户会将德语添加为翻译,然后将其发送到法国。法语用户将能够看到原始语言(英语)和德语。
背景
该应用是包裹在Electron中的React Web应用。
对于用例,我实现了localStorage API以存储内容更改并在不同的翻译之间切换。
问题
将应用程序构建为便携式exe并对其进行测试后,我开始注意到内容不会转移到新PC上。
似乎数据已存储在系统上或正在发生其他事情(例如,将便携式exe移至另一台计算机时会擦除localStorage)。
在我看来,由于我使用的是localStorage,而Electron将Chromium浏览器与Web应用程序捆绑在一起,因此我希望将localStorage保存在便携式应用程序中。
很想听听您对此的看法
感谢一百万。
答案 0 :(得分:1)
localStorage
不会保存到应用程序的二进制文件中,而是保存到PC文件系统中帐户的文件中。
例如,在Linux上,Electron在~/.config
中为您的应用创建目录,并将localStorage
数据存储在那里。我想您可能会在Windows上的%APPDATA%
(C:\Users\YourUsername\AppData\Roaming\
或类似名称)中找到应用程序的目录。
您可以尝试将数据写入应用资源包中的文件,该文件将在重新分发时保留,但这是另一个问题和答案。